![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Handle процесса [D7]
Encore © (2009-02-17 10:43:00)Доброе время суток.) Сразу извиняюсь если чью то тему продублировал ведь вопрос думаю частый...но проюзав поиск с параметрами handle и процесс ничего толкового не нашел.
Задачка такая необходимо зная имя процесса напрмер sample.exe узнать его handle и закрыть его. Подскажите пожалуйста а то в winApi совсем не разбираюсь((
GrayFace (2009-02-19 10:40:00) [1]И после этого OpenProcess
Rouse_ (2009-02-19 10:35:00) [2]
function GetPID(aExeName: String): DWORD;
var
hSnap: Cardinal;
ProcessEntry: TProcessEntry32;
Finding: LongBool;
begin
Result := 0;
aExeName := AnsiLowerCase(aExeName);
hSnap := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if hSnap = 0 then
Exit;
ProcessEntry.dwSize := SizeOf(ProcessEntry);
Finding := Process32First(hSnap, ProcessEntry);
while Finding do
begin
if aExeName = AnsiLowerCase(ExtractFileName(ProcessEntry.szExeFile)) then
begin
Result := ProcessEntry.th32ProcessID;
Break;
end;
Finding := Process32Next(hSnap,ProcessEntry);
end;
CloseHandle(hSnap);
end;
Сергей М. (2009-02-17 10:53:00) [3]
> узнать его handle
handle не "узнается" - он выдается системой при вызовt CreateProcess, OpenProcess, DuplicateHandle.
Vemer (2009-02-17 10:51:00) [4]FindWindow - > GetWindow(parent) -> GetProcessID?