PRB: Link Error LNK1104: Cannot Open File OLECLI32.LIB

ID: Q125622


The information in this article applies to:


SYMPTOMS

When converting a project from version 1.0 of Visual C++ 32-bit Edition to version 2.x or 4.0, the linker generates the following error:

error LNK1104: cannot open file "olecli32.lib"
-or-
error LNK1104: cannot open file "olesvr32.lib"


CAUSE

Visual C++ 32-bit Edition OLE libraries OLECLI32.LIB and OLESVR32.LIB of version 1.0 have been replaced by OLE libraries OLE32.LIB and OLEAUT32.LIB for versions 2.x and 4.0. (OLE32.LIB and OLEAUT32.LIB are import libraries for OLE32.DLL and OLEAUT32.DLL.) In converting the makefile, Visual C++ version 2.x or 4.0 specifies the outdated OLE library files instead of the new versions supplied.


RESOLUTION

Remove the OLECLI32.LIB and OLESVR32.LIB files from the list of library modules. To do this, choose Settings from the Project menu in Visual C++ version 2.x or from the Build menu in Visual C++ version 4.0. Then choose the Link property sheet or Tab to bring up the list of library modules. Delete OLECLI32.LIB and OLESVR32.LIB, press OK to save your changes. Rebuild the project.


MORE INFORMATION

The project to be converted was created originally with Visual C++ 32-bit Edition, version 1.0. It contains a list the of object and libraries modules necessary to build the project. The OLE libraries OLECLI32.LIB and OLESVR32.LIB are among this list. When the project is converted, this information is consulted. However, Visual C++ version 2.x or 4.0 has no way to know whether or not a project depends upon a particular module or was simply using the module version available. Thus, it does not exclude what may be outdated modules.

Additional query words:


Keywords          : kbenv kberrmsg kbtshoot kbusage kbide kbVC kbVC200 kbVC210 kbVC400 kbVC500 kbVC600 kbGrpDSTools 
Version           : 2.0 2.1 4.0 5.0 6.0
Platform          : NT WINDOWS 
Issue type        : kbprb 

Last Reviewed: July 27, 1999