Einstiegspunkt bei dll



  • Hallo Leute,

    ich habe ein schwer zu beschreibendes Problem. Mit der C Programmierung kenne ich mich auch nicht so gut aus. Ich hoffe Ihr versteht mich trotzdem...
    Ich habe einen Source aus dem Inet heruntergeladen und möchte ihn unter dem Visual Studio zum Laufen bringen. Das funktioniert nicht.

    // DLL entry point code. the _CRT_INIT function is needed
    // if you are using Microsoft's 32 bit compiler
    // dont forget to set the linker entrypoint to DllEntryPoint 
    // BOOL WINAPI _CRT_INIT(HINSTANCE hinstDLL, DWORD dwReason, LPVOID lpReserved);
    BOOL WINAPI  DllEntryPoint (HINSTANCE hDLL, DWORD dwReason, LPVOID lpReserved) {
    ...
    

    Wenn ich die Zeile auskommentiere kommt dieser Fehler:

    myfunc.obj : error LNK2001: Nichtaufgeloestes externes Symbol "int __stdcall _CRT_INIT(struct HINSTANCE__ *,unsigned long,void *)" (?_CRT_INIT@@YGHPAUHINSTANCE__@@KPAX@Z)
    Debug/myfunc.dll : fatal error LNK1120: 1 unaufgeloeste externe Verweise
    

    Wenn ich unter Linker den Entry Point setze kommt noch ein Fehlermeldung hinzu.

    Benutze ich die Kompilierbefehle die im Inet angegeben waren:
    cl -c -I..\..\INCLUDE -DWIN32 myFunc.c
    link -out:.\myFunc.dll -dll -entry:"DllEntryPoint" myFunc.obj ..\..\LIB\wa32.LIB

    wird alles ohne probleme compiliert und gelinkt. Die lib aud dem Befehl habe ich im VC übernommen.

    Hat jemand ein Ahnung woran das liegt?

    Viele Grüße

    Peter



  • extern "C" {
    code
    }



  • Vielen Dank Mike:-)
    Daran hat es gelegen...


Anmelden zum Antworten