Microsoft KB Archive/182117

= PRB: Unresolved External Symbol for IID/CLSID from Internet Client SDK =

Article ID: 182117

Article Last Modified on 5/11/2006

-

APPLIES TO


 * Microsoft Internet Explorer 4.0 128-Bit Edition
 * Microsoft Internet Explorer 4.01 Service Pack 2
 * Microsoft Visual C++ 5.0 Enterprise Edition
 * Microsoft Visual C++ 5.0 Professional Edition

-



This article was previously published under Q182117



SYMPTOMS
When creating a Visual C++ application that uses an Internet Client SDK interface identifier (IID) or class ID (CLSID), you may receive an "Unresolved external symbol" error when linking your project.



CAUSE
This error indicates that the linker could not resolve the IID or CLSID you are referencing in your project.

Either the Internet Client SDK include and library paths are not specified as the first paths in the Visual C++ directory lists, or the correct library, which contains the identifiers, is not being linked to your application.



RESOLUTION
Specify the correct locations for the Internet Client SDK include and library files and specify these as the first in the directory lists

If necessary, modify the Project Link settings and add Uuid.lib, which defines the new IIDs and CLSIDs, to the "Library/object modules" section.



STATUS
This behavior is by design.



MORE INFORMATION
Microsoft Visual C++ searches header and library files in the locations specified in the Tools...Options...Directories dialog box. It searches these locations in the order specified in these lists.

The Internet Client SDK provides newer versions of many header and library files that allow you to use new features provided with Microsoft Internet Explorer 4.0. Therefore, you must specify that the Visual C++ build tools search the Internet Client SDK locations before the standard locations to locate these new symbols.

Specify the path to the Internet Client SDK include directory under the "Include files" section and the library directory under the "Library files" section.

