Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Pfad meiner DLL innerhalb meiner DLL ermitteln (https://www.delphipraxis.net/80947-pfad-meiner-dll-innerhalb-meiner-dll-ermitteln.html)

Zacherl 17. Nov 2006 21:53


Pfad meiner DLL innerhalb meiner DLL ermitteln
 
Hi,

wie kann ich den Pfad von meiner DLL ermitteln. Ich habe eine DLL, die ich mit der Rundll32.exe starte, aber ParamStr(0) liefert mir nur den Pfad zur Rundll32.exe.

Florian

mkinzler 17. Nov 2006 21:57

Re: Pfad meiner DLL innerhalb meiner DLL ermitteln
 
Was sthet in ParamStr(1)?

Zacherl 17. Nov 2006 21:58

Re: Pfad meiner DLL innerhalb meiner DLL ermitteln
 
Der Pfad zur Rundll32.exe + die Parameterzeile.

mkinzler 17. Nov 2006 22:00

Re: Pfad meiner DLL innerhalb meiner DLL ermitteln
 
Die Dll wird ja als Parameter an RunDLL übergeben, dann müßte sie ja auch in der Parameterliste stehen.

Zacherl 17. Nov 2006 22:01

Re: Pfad meiner DLL innerhalb meiner DLL ermitteln
 
Ja, aber wenn ich, wie es hinterher sein soll, die DLL in den Winlogon Prozess injiziere, dann wird kein ParamStr mehr übergeben.

ringli 17. Nov 2006 22:05

Re: Pfad meiner DLL innerhalb meiner DLL ermitteln
 
Folgenden Code hab ich mal irgendwo gefunden:
Delphi-Quellcode:
function GetModulePath : String;
var
  QueryRes: TMemoryBasicInformation;
  LBuffer: String;
begin
  VirtualQuery(@GetModulePath, QueryRes, SizeOf(QueryRes));
  SetLength(LBuffer, MAX_PATH);
  SetLength(LBuffer, GetModuleFileName(Cardinal(QueryRes.AllocationBase),
  PChar(LBuffer), Length(LBuffer)));
  Result := LBuffer;
end;

Zacherl 17. Nov 2006 22:39

Re: Pfad meiner DLL innerhalb meiner DLL ermitteln
 
Danke, funktioniert :thumb:

Ydobon 17. Nov 2006 22:53

Re: Pfad meiner DLL innerhalb meiner DLL ermitteln
 
GetModuleFileName mit HInstance müsste auch schon reichen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:55 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