Das ist meiner Meinung nach schon das Problem.
DLL erzeugt mit modernem Delphi und du arbeitest mit einem alten. Das Problem hatte ich umgekehrt schon.
Das sollte kein Problem sein, jedenfalls nicht für LoadLibrary. DLLs sind ja gerade dafür da, von einem beliebigen Programm geladen und benutzt zu werden, völlig egal, womit die beteiligten Teile kompiliert wurden. Trotzdem ist dein Einwand grundsätzlich berechtigt, wenn es um Rückgaben von Funktionen aus der
DLL geht (Stichwort Strings/PChar und
Unicode). Aber das kommt erst nach dem LoadLibrary.
@joacim:
Den (relevanten) Fehlercode aus dem OP
beschreibt MS so:
Zitat:
ERROR_MOD_NOT_FOUND
126 (0x7E)
The specified module could not be found.
Schau dir die
DLL genauer an, z.B. mit einem der schon genannten Programme (Dependency Walker,
DLL Export Viewer) und prüfe, welche Funktionen deine
DLL aus anderen DLLs importiert. Bevor eine
DLL erfolgreich geladen werden kann, müssen
alle (statischen) Import-Abhängigkeiten aufgelöst werden. Und samso sagte ja schon richtig, dass du die Win64-Variante der
DLL ignorieren kannst, denn dein Programm ist in jedem Fall 32-bittig.
Grüße
Dalai