Skip to main content
GameDev.net gamedev.net
🔒 Locked

Using static MFC library and implementing DllGetClassObject

Started by Dawoodoz Jun 13, 2012 at 7:51 PM 1 replies 2.7k views
Original Post
Dawoodoz
Dawoodoz
I make an MFC ActiveX component in Visual C++ 2005 and need to link the C++ runtime and MFC as static libraries to reduce the DLL hell for end users. The problem seems to be that the static library did not implement the methods that existed in the dynamic version of MFC.

I have implemented my own DllCanUnloadNow with a use counter but I can't implement DllGetClassObject because everything in MFC is hidden with many layers of inheritance and thin documentation.

I have access to my own control class inheriting COleControl but I can't find access to the class ID (CLSID m_clsid) or the hidden factory class implementing QueryInterface.
Dawoodoz
Dawoodoz
It seems that the runtime dependency was removed when I selected to use a static MFC so that I removed it twice. Now it is working without dependencies to the MFC or C++ runtime.
Dawoodoz
Dawoodoz
Now the dynamic library is back somehow and causing link errors.

Compiling the same code again caused the error to disappear. biggrin.png

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.