![]() |
AW: LoadLibrary unter Windows 7
Zitat:
Kannst du mal folgendes Testen:
Delphi-Quellcode:
Gruß, Chris
DLLName := PAnsiChar(ExtractFilePath(Application. ExeName)+'SCANNDYDll.dll';
if FileExists(DLLName) then begin ShowMessage('Mich gibt es'); DLLHandle := LoadLibary(DLLName); end else begin ShowMessage('Datei gibt es nicht'); DLLHandle := 0; end; |
AW: LoadLibrary unter Windows 7
Was für ein Windows, 32-Bit oder 64-Bit? Was für eine Anwendung, 32-Bit oder 64-Bit? Was für eine DLL, 32-Bit oder 64-Bit? Und: "If the function fails, the return value is NULL. To get extended error information, call GetLastError."
Delphi-Quellcode:
Warum nicht gleich richtig:
DLLName := PAnsiChar(ExtractFilePath(Application. ExeName)+'SCANNDYDll.dll';
if FileExists(DLLName) then begin ShowMessage('Mich gibt es'); DLLHandle := LoadLibary(DLLName); end else begin ShowMessage('Datei gibt es nicht'); DLLHandle := 0; end;
Delphi-Quellcode:
Dann weiß man auch WARUM es nicht funktioniert hat. Sonst fangen wir ja wieder an zu raten. ;)
if LoadLibrary(...) = 0 then
begin ShowMessage(SysErrorMessage(GetLastError); end else begin ...; ...; end; |
AW: LoadLibrary unter Windows 7
Zitat:
Gruß, Chris |
AW: LoadLibrary unter Windows 7
Das ShowMessage zeigt mir den richtigen Pfad mit DLL an.
Also in dem Fall c:\Programme (x86)\XXX\Scandydll.dll |
AW: LoadLibrary unter Windows 7
64 Bit Windows,
32 Bit Anwendung 32 Bit DLL |
AW: LoadLibrary unter Windows 7
Ich habe eine Zeile über den LoadLibrary ein FileExists und das gibt mir true zurück.
Deswegen bin ich mir ja eigentlich sicher, dass der Pfad richtig sein sollte ;) |
AW: LoadLibrary unter Windows 7
Zitat:
Gruß, Chris |
AW: LoadLibrary unter Windows 7
Ich hätte da mal eine andere Idee. Ich weiß aber nicht, ob so etwas technisch möglich ist. Angenommenen die ScandyDll.dll will eine weitere DLL laden und findet diese nicht, würde dann die Fehlernummer 126 durchgereicht werden?
|
AW: LoadLibrary unter Windows 7
Zitat:
|
AW: LoadLibrary unter Windows 7
Natürlich wird "C:\Program Files (x86)\" angezeigt, du hast recht ;)
Passiert, wenn man schnell dahin schreibt... Ich habe jetzt mal genau deinen Code verwendet und ich bekomme auch die Meldung "Mich gibt es" und DLLHandle ist danach 0... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz