Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi muss dll datei bei dynamisch laden in system 32 suchen (https://www.delphipraxis.net/152814-muss-dll-datei-bei-dynamisch-laden-system-32-suchen.html)

Delphiuser1987 8. Jul 2010 08:21

Delphi-Version: 2010

muss dll datei bei dynamisch laden in system 32 suchen
 
hab ein kleines Problem.
Ich möchte nur die exe-Datei von meinem Programm auf einem Rechner laufen lassen. In diesem Programm lade ich dynamisch eine dll-datei.
Diese wird in Windows--> System32 abgelegt. Wie kann ich diese Datei in diesem Ordner vom Programm suchen lassen.
Bei mir geht es gerade nur wenn die exe-Datei und die dll Datei sich im gleichen Ordner befinden.

Geht das mit dem suchen überhaupt, oder muss sich das Programm immer am gleichen Ort wie die dynamisch geladene dll-Datei befinden ???

Danke euch :thumb:

mkinzler 8. Jul 2010 08:31

AW: muss dll datei bei dynamisch laden in system 32 suchen
 
Wie lädst du diese? Normalerweise findet er sie in jedem Pfad der in der PATH-Variablen steht
Welchesd OS? 64Bit?

Delphiuser1987 8. Jul 2010 09:05

AW: muss dll datei bei dynamisch laden in system 32 suchen
 
habe die Befehlszeile:

hHandle := LoadLibrary(Pchar(extractFilePath(ParamStr(0))+'ci f32dll.dll'));

mkinzler 8. Jul 2010 09:08

AW: muss dll datei bei dynamisch laden in system 32 suchen
 
Lass den Pfad weg

hoika 8. Jul 2010 09:11

AW: muss dll datei bei dynamisch laden in system 32 suchen
 
Hallo,#

was mkinzler sagen will

LoadLibrary sucht automatisch in

1. aktuellem Verzeichnis (der Exe)
2. System32
3. Windows
4. %Path%


4. bin ich mir gerade nicht sicher.


Heiko

Delphiuser1987 8. Jul 2010 09:35

AW: muss dll datei bei dynamisch laden in system 32 suchen
 
d.h. nur

hHandle := LoadLibrary(Pchar(ParamStr(0))+'ci f32dll.dll')); ??????

mkinzler 8. Jul 2010 09:37

AW: muss dll datei bei dynamisch laden in system 32 suchen
 
Nein nur den Namen der Dll
Delphi-Quellcode:
hHandle := LoadLibrary('ci f32dll.dll'));

Delphiuser1987 8. Jul 2010 09:42

AW: muss dll datei bei dynamisch laden in system 32 suchen
 
ok dank euch :thumb:, genial wie immer :-D

hoika 8. Jul 2010 10:18

AW: muss dll datei bei dynamisch laden in system 32 suchen
 
Hallo,

das Problem bei

Delphi-Quellcode:
LoadLibrary(Pchar(extractFilePath(ParamStr(0))+'ci f32dll.dll'));
ist übrigens das Leerzeichen im DLL-Namen.

Wenn halt einen Pfad stehen sollte, " " verwenden, also

LoadLibrary(Pchar('"'+extractFilePath(ParamStr(0)) +'ci f32dll.dll')+'"');


BTW:
So kommt man auch in der Kommandozeile auf 64bit Windows ins "Program files (x86)".


Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz