Autor Beitrag
luckyluke84
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 54

WinXP
Lazarus
BeitragVerfasst: Mo 09.08.04 16:07 
Ich hab schon einige Bsp. zu dem Thema gefunden, jedoch nichts womit
ich was anfangen kann.
Hier ist eine von den Proceduren die ich zu tausenden gefunden hab.
Ich will aber von EINEM Handle, EINEN Dateinamen erhalten.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
procedure CreateWin9xProcessList(List: TStringList); 
var 
  hSnapShot: THandle; 
  ProcInfo: TProcessEntry32; 
begin 
  if List = nil then 
    Exit; 
  hSnapShot := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0); 
  if (hSnapShot <> THandle(-1)) then 
  begin 
    ProcInfo.dwSize := SizeOf(ProcInfo); 
    if (Process32First(hSnapshot, ProcInfo)) then 
    begin 
      List.Add(ProcInfo.szExeFile); 
     while (Process32Next(hSnapShot, ProcInfo)) do 
       List.Add(ProcInfo.szExeFile); 
    end
    CloseHandle(hSnapShot); 
  end
end;

So hab ich die Procedure abgeändert :
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
Function GetExeByHandle(Handle : HWND): String
var 
  hSnapShot: THandle; 
  ProcInfo: TProcessEntry32; 
begin 
  hSnapShot := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0); 
  if (hSnapShot <> THandle(-1)) then 
  begin 
    ProcInfo.dwSize := SizeOf(ProcInfo); 
    if (Process32First(hSnapshot, ProcInfo)) then 
    begin 
      Result := ProcInfo.szExeFile; 
    end
    CloseHandle(hSnapShot); 
  end
end;

Jetzt wird zwar noch nicht die Exe-Datei zu meinen Handle angezeigt,
aber ich hab erwartet das Zumindest etwas zurückgegeben wird. Aber
es wird immer "" zurückgegeben. Das Versteh ich nicht. Bitte helft mir!
Moderiert von user profile iconUGrohne: Code- durch Delphi-Tags ersetzt.
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 09.08.04 16:22 
Laufe alle Prozesse durch und vergleiche immer das Prozesshandle mit deinem Handle.
maxk
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1696
Erhaltene Danke: 1

Win XP, Debian Lenny
Delphi 6 Personal
BeitragVerfasst: Mo 09.08.04 16:53 
...und verwende künftig Delphitags!

_________________
Ein Computer wird das tun, was Du programmierst - nicht das, was Du willst.
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 09.08.04 20:36 
In den hiesigen FAQs hättest du einen Ansatz gefunden: klick. Und diesen Ansatz hat Nico in der DP verbessert.