Вниз
Скачать: CL | DM;

path in 9x   Найти похожие ветки 

 
rimd ©   (2004-04-07 14:12) [0]

написал наконец-то ф-ию которая выдергивает путь, зная только окно. проблемма в том что это дело работает только на w2k, а как в остальных? имеется в виду 98/me

function GetAppFilePath(WndHWND:Cardinal):string;
var
 HProc,PID,HSnap:Cardinal;
 pe32:tagPROCESSENTRY32;
 ModName:array[0..MAX_PATH] of Char;
begin
if not IsWindow(WndHWND) then
begin
 Result:="";
 Exit;
end;
HProc:=GetWindowThreadProcessId(Form1.Handle,PID);
if HProc=0 then
begin
 Result:="";
 Exit;
end;
HSnap:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,PID);
if HSnap=1 then
begin
 Result:="";
 Exit;
end;
if not Process32First(HSnap,pe32) then
begin
 Result:="";
 Exit;
end;
if GetModuleFileName(pe32.th32ModuleID,ModName,MAX_PATH)=0 then
begin
 Result:="";
 Exit;
end;
Result:=String(ModName);

end;


 
BiN ©   (2004-04-07 14:46) [1]

и что? работает?!!!

вот держи для 9х


function GetWindowExeName(WindowHandle:HWND):string;
var
 ProcessEntry: TProcessEntry32;
 ProcessId: DWORD;
 hSnap: THandle;
begin
 Result:="";
 if GetWindowThreadProcessId(WindowHandle, @ProcessId)=0 then exit;
 ProcessEntry.dwSize:=sizeof(TProcessEntry32);
 hSnap:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
 if hSnap=INVALID_HANDLE_VALUE then exit;
 if Process32First(hSnap,ProcessEntry) and (ProcessId=ProcessEntry.th32ProcessID) then
 begin
   Result:=ProcessEntry.szExeFile;
   CloseHandle(hSnap);
   exit;
 end;
 while (Process32Next(hSnap, ProcessEntry))
 and (ProcessId<>ProcessEntry.th32ProcessID) do;
 if ProcessId=ProcessEntry.th32ProcessID
 then Result:=ProcessEntry.szExeFile;
 CloseHandle(hSnap);
end;


 
Рамиль ©   (2004-04-07 14:49) [2]


> rimd ©   (07.04.04 14:12)  

Тебе срочно в эту ветку
http://delphimaster.net/view/15-1081319370/



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.045 c
1-1083911261
Ш-К
2004-05-07 10:27
2004.05.23
Имитация множественного наследования


7-1081922752
Евгыш
2004-04-14 10:05
2004.05.23
AsyncPro, получение блока данных


1-1083835108
Volodya_
2004-05-06 13:18
2004.05.23
marquee


1-1084121162
Soldier
2004-05-09 20:46
2004.05.23
TMemo


14-1083152485
Igorek
2004-04-28 15:41
2004.05.23
Предложение:




   Наверх