DLL umbauen [Standard-DLL -> Erweiterungs-MFC-DLL]
-
Guten Morgen,
ich hab mit dem Wizard vom Visual Studio eine "Standard-DLL" erzeugt.
Nun müsste ich das aber in eine "Erweiterungs-MFC-DLL" umbauen.Es langt nicht, die App rauszunehmen und es durch die "APIENTRY DLLMAIN" zuersetzen.
Dann bekomme ich nämlich diese Ausgabe:Linker-Vorgang läuft... mfcs42d.lib(dllmodul.obj) : error LNK2005: _DllMain@12 bereits in brzdbinfo.obj definiert mfcs42d.lib(dllmodul.obj) : warning LNK4006: _DllMain@12 bereits in brzdbinfo.obj definiert; zweite Definition wird ignoriert
Aber wo muss ich jetzt noch was umstellen oder rausnehmen?
-
Jetzt hab ich mir die Mühe gemacht und eine neue DLL erstellt.
Diesmal die gewünschte "Erweiterungs-MFC-DLL".
Alle Resourcen hab ich rüberkopiert und auch meine Quellen.
Aber beim Kompilieren (eigentlich eher beim Linken) kommt wieder dieser Fehler:Linker-Vorgang läuft... mfcs42d.lib(dllmodul.obj) : error LNK2005: _DllMain@12 bereits in brzdbinfo.obj definiert mfcs42d.lib(dllmodul.obj) : error LNK2005: __pRawDllMain bereits in brzdbinfo.obj definiert mfcs42d.lib(dllmodul.obj) : warning LNK4006: _DllMain@12 bereits in brzdbinfo.obj definiert; zweite Definition wird ignoriert mfcs42d.lib(dllmodul.obj) : warning LNK4006: __pRawDllMain bereits in brzdbinfo.obj definiert; zweite Definition wird ignoriert Bibliothek Debug/brzdbinfo.lib und Objekt Debug/brzdbinfo.exp wird erstellt Debug/brzdbinfo.dll : fatal error LNK1169: Ein oder mehrere mehrfach definierte Symbole gefunden
Wo in meinem Code kann der "böse Bube" denn stecken?
-
So, ich hab den Fehler
Dieses Makro in meiner exportierten Funktion war's.//AFX_MANAGE_STATE(AfxGetStaticModuleState());
-
hehejo schrieb:
Guten Morgen,
ich hab mit dem Wizard vom Visual Studio eine "Standard-DLL" erzeugt.
Nun müsste ich das aber in eine "Erweiterungs-MFC-DLL" umbauen.Es langt nicht, die App rauszunehmen und es durch die "APIENTRY DLLMAIN" zuersetzen.
Dann bekomme ich nämlich diese Ausgabe:Linker-Vorgang läuft... mfcs42d.lib(dllmodul.obj) : error LNK2005: _DllMain@12 bereits in brzdbinfo.obj definiert mfcs42d.lib(dllmodul.obj) : warning LNK4006: _DllMain@12 bereits in brzdbinfo.obj definiert; zweite Definition wird ignoriert
Aber wo muss ich jetzt noch was umstellen oder rausnehmen?