Cry about...
MS-Windows Troubleshooting


Compiler error: User-defined type not defined (IUnknown)


Symptom:

When compiling a Visual Basic 6 application the following error is generated when VB encounters the type "IUnknown":

Compiler error:
User-defined type not defined

Cause:

This error means simply that the VB compiler has encountered a type that it does not recognise. The compiler is assuming this to be a user-defined type because it is not a system defined one.

In the case of IUnknown this error indicates that the VB project is missing a reference to the OLE Automation library.

Remedy:

These notes apply specifically to the case where the unknown type is "IUnknown": add the following reference to the project:

C:\WinNT\System32\stdole2.tlb

substitute C:\Windows if using Windows 9x or XP.


These notes have been tested with Visual Basic 6 running under Windows NT and Windows 2000.



About the author: is a dedicated software developer and webmaster. For his day job he develops websites and desktop applications as well as providing IT services. He moonlights as a technical author and consultant.