Home > Software engineering >  Windows 7 VS2012 ADO clew cannot find MSJRO. DLL, compile failed
Windows 7 VS2012 ADO clew cannot find MSJRO. DLL, compile failed

Time:10-17

engineering directly converted from VC6.0, under VC6.0 compiler: no problem, the Windows 7 + VS2012 + ADO compile appear under the following tips:
Fatal error C1083: cannot open type library file: "C: \ Program Files \ Common Files \ System \ ado \ MSJRO DLL" : No to the file or directory

When using ado statement and import the two libraries:
# import "C: \ Program Files \ Common Files \ System \ ado \ msado15 DLL" rename (" EOF ", "EndOfFile")
# import "C: \ Program Files \ Common Files \ System \ ado \ MSJRO DLL" no_namespace rename (" ReplicaTypeEnum ", "_ReplicaTypeEnum")

To view the directory C: \ Program Files \ Common Files \ System \ ado, is no MSJRO. DLL this file, wondering if Windows 7 under the lack of the file, and then directly under winxp copy a file, but compiled about MSJRO. TLH error warning:
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
1> D: \ vc + + \ filetracer \ debug \ msjro TLH (196) : error C2146: syntax errors: lack of ";" (in front of the identifier "ConflictTables")
1> D: \ vc + + \ filetracer \ debug \ msjro TLH (196) : error C4430: lack of type specifier - is assumed to be int, note: c + + does not support default int
1> D: \ vc + + \ filetracer \ debug \ msjro TLH (224) : error C2146: syntax errors: lack of ";" (in front of the identifier "GetConflictTables")
1> D: \ vc + + \ filetracer \ debug \ msjro TLH (224) : error C4430: lack of type specifier - is assumed to be int, note: c + + does not support default int
1> D: \ vc + + \ filetracer \ debug \ msjro TLH (224) : warning C4183: "GetConflictTables" : the lack of a return type; Assumed to return "int" member function
1> D: \ vc + + \ filetracer \ debug \ msjro tli (111) : error C2143: syntax errors: lack of ";" (in front of the "IReplica: : GetConflictTables")
1> D: \ vc + + \ filetracer \ debug \ msjro tli (111) : error C2433: "_RecordsetPtr" : not allowed to use in data statement "inline"
1> D: \ vc + + \ filetracer \ debug \ msjro tli (111) : error C4430: lack of type specifier - is assumed to be int, note: c + + does not support default int
1> D: \ vc + + \ filetracer \ debug \ msjro tli (115) : error C2064: item not calculated as function of two parameters
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

Can you tell me whether you in such an environment also encountered such a problem, is how to solve? Please grant instruction!

CodePudding user response:

http://blog.csdn.net/sea_god/article/details/2721162
Msado15. DLL"

CodePudding user response:

reference 1st floor oyljerry response:

http://blog.csdn.net/sea_god/article/details/2721162Msado15. DLL "


Msado15. DLL has import, if the reference of the file complains,
You send this post links not solve my problem,

CodePudding user response:

CodePudding user response:

No superior appearance?
Popular place for fall?

CodePudding user response:

C: \ Program Files \ (x86) Common Files \ System \ ado

CodePudding user response:

Error is as follows:

MSJRO. TLH (100) : error C2146: syntax error: missing '; 'before the identifier' ConflictTables'
MSJRO. TLH (100) : error C2501: '_RecordsetPtr: missing storage - class or type specifiers
MSJRO. TLH (100) : error C2501: 'ConflictTables: missing storage - class or type specifiers
MSJRO. TLH (128) : error C2146: syntax error: missing '; 'before the identifier' GetConflictTables'
MSJRO. TLH (128) : error C2501: '_RecordsetPtr: missing storage - class or type specifiers
MSJRO. Tli (43) : error C2143: syntax error: missing '; 'before' tag: : id '
MSJRO. Tli (43) : error C2433: '_RecordsetPtr' : 'inline' not permitted on the data declarations
MSJRO. Tli (43) : error C2501: '_RecordsetPtr: missing storage - class or type specifiers
MSJRO. Tli (43) : fatal error C1004: unexpected end of file found

The original header files relevant code is like this:
# pragma warning (4146) disable:
//CG: In order to use this code against a company's version of ADO, the appropriate
//ADO library needs to be 2 in the # import statement
# pragma message (" Make sure you go to view the Options. Directories. The Library files and add the paths to msado15. DLL and msjro. DLL will usually be a C: \ \ Program files \ \ Common files \ \ System \ \ ado ")
//# import "C: \ Program Files \ Common Files \ System \ ado \ msado15 DLL" rename (" EOF ", "EndOfFile")
//# import "C: \ Program Files \ Common Files \ System \ ado \ MSJRO DLL" no_namespace rename (" ReplicaTypeEnum ", "_ReplicaTypeEnum")

# import & lt; Msado15. Dll> Rename (" EOF ", "EndOfFile")
# import & lt; MSJRO. DLL> No_namespace rename (" ReplicaTypeEnum _ReplicaTypeEnum ", "")

Need to set up in the path C: \ Program Files \ Common Files \ System \ ado \

Solution:
Copy from the XP SP3 system msado15. DLL, msjro. DLL, head into the database file and directory, modify the header file:

# import "msado15. DLL" rename (" EOF ", "EndOfFile")
# import "MSJRO. DLL" no_namespace rename (" ReplicaTypeEnum ", "_ReplicaTypeEnum")

CodePudding user response:

Search "MSJRO. DLL" I in:
C: \ Program Files \ (x86) Common Files \ System \ ado

CodePudding user response:

In stdafx. H introduced in ADO as compile:
# import & lt; C: \ Program Files \ Common Files \ System \ ado \ msado15 dll> No_namespace rename (" EOF ", "EndOfFile")
  • Related