Entwickler-Ecke
Dateizugriff - DLL Suchverzeichnis
Alibi - Mi 22.10.03 18:40
Titel: DLL Suchverzeichnis
Hi,
ich hab hier eine Komponente, die eine DLL benötigt (Zeoslib). Ich will diese DLL aber nicht im selben Verzeichnis wie die Exe haben sondern in einem Unterordner.
Wie mach ich dem Programm klar, dass es in diesem Unterordner nach der DLL suchen soll ohne:
- Den Code von Zeoslib anzufassen.
- Irgendwelche Windowseinstellungen zu ändern
?
Delete - Mi 22.10.03 19:14
Dynamsich laden. Oder ins Windowsverzeichnis kopieren.
Alibi - Mi 22.10.03 20:59
Beides doof, beim ersteren müsste ich wohl Zeos ändern und das möchte ich nicht. Letzteres: Ich mag nicht ins Windowsverzeichnis, das gehört Windows und nicht meinem Programm. Und ein anderes wird wohl nicht auf die DLL zugreifen.
bIce - Do 23.10.03 19:41
Dann bleibt nur noch das Systemverzeichnis.
thorbenZ - Do 23.10.03 20:42
Also DLLs soll man ruhig ins Systemverzeichnis kopieren, auch wenn die sonst keiner braucht.
Alibi - Do 23.10.03 21:12
Hm, ne, dann lieber das Programmverzeichnis. Naja, dann ist das wohl nicht möglich, schade. Aber danke.
Tino - Fr 24.10.03 09:28
Es ist ja möglich... nur musst du die DLL dann dynamisch einbinden.
Gruß
Tino
Alibi - Fr 24.10.03 13:25
Ja, soweit wäre das ja kein Problem. Jedoch hab ich hier Gründe, warum ich die Komponente (Zeoslib) nicht anfassen will. Am liebsten wäre mir also eine Funktion à la AddToDLLSearchPaths(ExtractFilePath(Application.ExeFile)+'DLLs\meineDll.dll);
im Hauptprogramm.
Alibi - Fr 24.10.03 13:49
Und es geht doch. :)
SetEnvironmentVariable('PATH', PChar(ExtractFilePath(Application.Exename) + 'DLLs\')); im Create und gut ist. :)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!