DLL-Datei



  • Hallo zusammen,

    besteht die Möglichkeit aus einer DLL-Funktion eine andere Funktion in einer anderen DLL-Datei aufzurufen?

    Danke



  • Ja.



  • Und wie? Muss ich dann ganz normal in der einen DLL die Header der anderen deglarieren?



  • Du musst die Funktionen bekannt machen und die Implementation liefern, genauso wie du es bislang offensichtlich auch schon machst.



  • Genauso wie du es in einer Exe machst. Eine DLL ist auch nichts anderes.



  • _Luckie schrieb:

    Genauso wie du es in einer Exe machst. Eine DLL ist auch nichts anderes.

    Kommt drauf an. Bei Late Binding muss man das, was der Compiler/Linker für dich erledigen, von Hand machen.

    @OP:
    Guck dir mal die Win32 Funktionen LoadLibrary , FreeLibrary und GetProcAddress an.



  • DocShoe schrieb:

    _Luckie schrieb:

    Genauso wie du es in einer Exe machst. Eine DLL ist auch nichts anderes.

    Kommt drauf an. Bei Late Binding muss man das, was der Compiler/Linker für dich erledigen, von Hand machen.

    @OP:
    Guck dir mal die Win32 Funktionen LoadLibrary , FreeLibrary und GetProcAddress an.

    Diese Funktionen muß man/frau doch auch bei EXEs benutzen. Nur wenn eine Importlibrary benutzt wird, muß man das nicht. Das gilt aber auch für DLLs.



  • mgaeckler schrieb:

    Diese Funktionen muß man/frau doch auch bei EXEs benutzen. Nur wenn eine Importlibrary benutzt wird, muß man das nicht. Das gilt aber auch für DLLs.

    Und wo ist da der Widerspruch? Ich habe nichts anderes behauptet, lediglich auf einen Sonderfall hingewiesen.



  • DocShoe schrieb:

    mgaeckler schrieb:

    Diese Funktionen muß man/frau doch auch bei EXEs benutzen. Nur wenn eine Importlibrary benutzt wird, muß man das nicht. Das gilt aber auch für DLLs.

    Und wo ist da der Widerspruch? Ich habe nichts anderes behauptet, lediglich auf einen Sonderfall hingewiesen.

    Dein Post habe ich so verstanden, daß beim LateBinding der Compiler beim Erstellen einer EXE-Datei vieles selber macht, was man beim Erstellen einer DLL von Hand machen muß. Das ist falsch. Es gibt beim Aufruf einer DLL keinen Unterschied, ob dies aus einer EXE oder aus einer anderen DLL geschieht.

    Es gibt nur den Unterschied ob die aufgerufene DLL statisch gebunden wird oder dynamisch. Wenn du nur auf diesen Unterschied hinweisen wolltest, habe ich Dich falsch verstanden.

    mfg Martin


Anmelden zum Antworten