Regsvr32 may fail when you use it to register a debug build of an MFC Server (192535)



The information in this article applies to:

  • The Microsoft Foundation Classes (MFC), when used with:
    • Microsoft Visual C++, 32-bit Enterprise Edition 5.0
    • Microsoft Visual C++, 32-bit Professional Edition 5.0
    • Microsoft Visual C++, 32-bit Enterprise Edition 6.0
    • Microsoft Visual C++, 32-bit Professional Edition 6.0
    • Microsoft Visual C++, 32-bit Learning Edition 6.0

This article was previously published under Q192535

SYMPTOMS

Regsvr32 may fail when you register a debug build of an MFC Server, and you may receive an error message that is similar to the following:
The ordinal 3300 could not be located in the dynamic link library
MFCO42D.DLL.
The ordinal number may vary.

If you click OK, you receive the following error message:
RegSvr32: LoadLibrary("<server name>") failed.
GetLastError returns 0x000000b6.

CAUSE

This problem occurs because the Debug MFC DLLs are not binary-compatible between Visual C++ 5.0 and Visual C++ 6.0. If you have written a debug build DLL in Visual C++ 5.0 and then you try to register the DLL on a computer that has Visual C++ 6.0 installed, you receive the error message.

WORKAROUND

The following are three possible workarounds:
  • Build a release version of the server in Visual C++ 5.0. Then, run the server on the target Visual C++ 6.0 computer.
  • Rebuild the server by using Visual C++ 6.0.
  • Copy the MFC debug DLLs from Visual C++ 5.0 to the same directory on the target computer as the MFC ActiveX server.

    Warning This workaround is for diagnostic purposes only because redistribution violates the Visual C++ license agreement.

STATUS

This behavior is by design.

REFERENCES

For more information, click the following article number to view the article in the Microsoft Knowledge Base:

190487 Various errors occur when you run an MFC debug application with the MFC debug DLLs of another version


Modification Type:MajorLast Reviewed:10/3/2005
Keywords:kbtshoot kbBug kbDebug kbprb KB192535 kbAudDeveloper