Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi EXE-/Modulname aus Fensterhandle ermitteln (https://www.delphipraxis.net/47275-exe-modulname-aus-fensterhandle-ermitteln.html)

c113plpbr 10. Jun 2005 21:17

Re: EXE-/Modulname aus Fensterhandle ermitteln
 
Zitat:

Zitat von Marphy
Mit GetModuleFileName() funktioniert es nach wie vor nicht, sehr wohl aber mit GetModuleFileNameEx und einem vorgeschobenen OpenProcess. :dancer:

Du hättest nur meinen Code kopieren müssen ... das steht das nämlich drin ... ^^

ciao, Philipp

Marphy 10. Jun 2005 21:21

Re: EXE-/Modulname aus Fensterhandle ermitteln
 
Hi,
ja, aber das "NT-only" EnumModules kann man sich sparen... In GetModuleFileName in hModule einfach 0 übergeben. Somit ist der Code von Win95 bis hin zu WinXP kompatibel, man muss auch nicht zwischen zwei Codes (ProcessSnapshot und EnumProcesses/EnumModules) betriebssystembedingt switchen. :???:

Gruß, Marco

c113plpbr 10. Jun 2005 21:32

Re: EXE-/Modulname aus Fensterhandle ermitteln
 
Zitat:

Zitat von Marphy
ja, aber das "NT-only" EnumModules kann man sich sparen... In GetModuleFileName in hModule einfach 0 übergeben. Somit ist der Code von Win95 bis hin zu WinXP kompatibel, man muss auch nicht zwischen zwei Codes (ProcessSnapshot und EnumProcesses/EnumModules) betriebssystembedingt switchen. :???:

Hmm ... stimmt ... ^^ ... ich hätte halt den code nochmal "überdenken" müssen ... aber darauf muss man erstmal kommen ...

ciao, Philipp

Marphy 14. Jun 2005 20:31

Problem doch noch nicht ganz gelöst...
 
Hallo zusammen,

Zitat:

Zitat von Marphy
Somit ist der Code von Win95 bis hin zu WinXP kompatibel, man muss auch nicht zwischen zwei Codes (ProcessSnapshot und EnumProcesses/EnumModules) betriebssystembedingt switchen.

Mist! :wall:
Habe im PSDK übersehen, dass GetModuleFileNameEx nur für NT-basierte Betriebssysteme verfügbar ist :x Also muss ich doch zwischen der ProcessSnapshot- (für Win9x) und der GetModuleFileNameEx-Variante betriebssystemabhängig umschalten.

Das eigentliche Problem:
Die PROCESSENTRY32 Struktur stellt zwar einen Member für den EXE-Dateinamen bereit, welcher aber wirklich nur den Dateinamen enthält, ich benötige aber den vollständigen Dateipfad! :cry:

Wie kann ich nun den vollständigen Moduldateinamen (inkl. -pfad) auch unter Win9x ermitteln?

Danke schon im Voraus für eure weitere Hilfe,
Marco

c113plpbr 15. Jun 2005 15:18

Re: Problem doch noch nicht ganz gelöst...
 
Zitat:

Zitat von Marphy
Das eigentliche Problem:
Die PROCESSENTRY32 Struktur stellt zwar einen Member für den EXE-Dateinamen bereit, welcher aber wirklich nur den Dateinamen enthält, ich benötige aber den vollständigen Dateipfad! :cry:

Bist du dir da ganz sicher? Nein, MSDN konsultieren: MSDN-Library durchsuchenPROCESSENTRY32
MSDN: PROCESSENTRY32
szExeFile
Pointer to a null-terminated string that specifies the name of the executable file for the process.

Windows Me/98/95: The file name includes the path.


LÖL! Hab gerade bemerkt, dass dieser letzte satz zwar in meiner (offline) MSDN steht, aber nicht in der Online-MSDN ... :gruebel: :mrgreen:

Tipp: besorg dir ne offline-version ... ;)

ciao, Philipp

Marphy 15. Jun 2005 16:32

Re: EXE-/Modulname aus Fensterhandle ermitteln
 
Hallo Philipp,
bist wohl der einzige, der hier Nachmittags online ist?! :-D

Zitat:

Bist du dir da ganz sicher? Nein, MSDN konsultieren: PROCESSENTRY32
Zum Ersten habe ich das unter W2k ausgetestet (da kann mir also selbst der PSDK nichts weiß machen) und zum Zweiten: Wo steht in deiner Quelle denn bitte etwas vom vollständigen Dateipad?!
Zitat:

szExeFile
Pointer to a null-terminated string that specifies the name of the executable file for the process.
Zitat:

LÖL! Hab gerade bemerkt, dass dieser letzte satz zwar in meiner (offline) MSDN steht, aber nicht in der Online-MSDN ...
Ahhhh! :-D Super!

Zitat:

Tipp: besorg dir ne offline-version ...
Ich habe mir den PSDK schon vor einigen Wochen heruntergeladen. 100 MB per DSL in 10 Minuten, kein Problem :???:

Grüße und Danke, Marco

Olli 16. Jun 2005 20:03

Re: EXE-/Modulname aus Fensterhandle ermitteln
 
Zitat:

Zitat von Marphy
Ich habe mir den PSDK schon vor einigen Wochen heruntergeladen. 100 MB per DSL in 10 Minuten, kein Problem :???:

100 MB gesamt? Dann hast du vermutlich nicht alles. Nur so als Hinweis!

Marphy 16. Jun 2005 20:13

Re: EXE-/Modulname aus Fensterhandle ermitteln
 
Hallo Herr Schneider, :mrgreen:
Zitat:

Zitat von Olli
Zitat:

Zitat von Marphy
Ich habe mir den PSDK schon vor einigen Wochen heruntergeladen. 100 MB per DSL in 10 Minuten, kein Problem :???:

100 MB gesamt? Dann hast du vermutlich nicht alles. Nur so als Hinweis!

Vielleicht waren's auch 200 MB, aber es war der gesamte PSDK. :stupid:

Gruß, Marco


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:16 Uhr.
Seite 2 von 2     12   

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