PRB: Mismatched Ole32.dll and Comcat.dll (201364)



The information in this article applies to:

  • Microsoft Windows NT Server 4.0
  • Microsoft Windows NT Workstation 4.0

This article was previously published under Q201364

SYMPTOMS

All the following symptoms apply:
  • When you perform the following steps

    • RegSvr32.Exe <Path for Windows\System>\ComCat.DLL on Windows 95.
    • RegSvr32.Exe <Path for Winnt\System32>\ComCat.DLL on NT 4.0.
    • Run the Setup program created with Microsoft Visual Basic. this error message appears:
      Comcat.dll was loaded, but the DllRegisterServer was entry point not found. DllRegisterServer may not be exported, or a corrupt version may be in memory. Consider using Pview to detect and remove it.
  • If you click Components from the Project menu in Visual Basic 5.0 or 6.0 to display the Components dialog box, the following error message appears:
    Class not registered Looking for object with CLSID: { 000E200]005-0000-0000-C000-000000000046 }

    -or-

    System Error &H80004002 (-2147467262). No such interface supported.

    If you click OK, the Components dialog box appears, but the components list may be empty.

  • Internet Explorer 4.0 or later gives the warning
    This page provides potentially unsafe information to an ActiveX Control. Your current security settings prohibit running controls in this manner. As a result, this page may not display correctly.
    while you access the Web site instead of displaying a table of chemical elements.

CAUSE

These symptoms are caused by mismatched Ole32.dll and Comcat.dll files on the system.

Comcat.dll version 4.71 exports the following functions:
  • DllRegisterServer
  • DllGetClassObject
  • DllUnRegisterServer
  • DllCanUnloadNow
Comcat.dll version 5.0 exports the following functions:
  • DllCanUnloadNow
  • DllUnRegisterServer
DllGetclassObject and DllRegisterServer are forwarded to Ole32.dll.

Comcat.dll version 5.0 works with Ole32.dll version 4.71 and later. Comcat.dll version 4.71 works with Ole32.dll version 4.0.

RESOLUTION

To resolve this problem, copy Comcat.dll version 4.71 into the System or System32 folder and register it.

MORE INFORMATION

Comcat.dll version 4.71 is distributable through Msvbvm50.exe. For additional information about Msvbvm50.exe, click the article number below to view the article in the Microsoft Knowledge Base:

180071 FILE: Msvbvm50.exe Installs Visual Basic 5.0 Run-Time Files

Please note that Comcat.dll version 5.0 is not redistributable.

REFERENCES

For additional information, click the article numbers below to view the articles in the Microsoft Knowledge Base:

177943 ActiveX Errors Running Microsoft Internet Explorer

175156 PRB: Class Not Registered Error and Empty Components Dialog

To learn what products include version 5.0 of Comcat.dll, use the Microsoft DLL Help Database.

Modification Type:MinorLast Reviewed:1/12/2005
Keywords:kbprb KB201364