Форум: "WinAPI";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
ВнизОтслеживание запуска процессов Найти похожие ветки
← →
DelphiN! © (2004-08-02 07:04) [0]Как поймать запуск нового процесса, и разрешить ему запуск либо же нет. А также как получить информацию о процессе(имя исполняемого файла)
← →
noname © (2004-08-02 07:48) [1]Перехватывай CreateProcessA/W
← →
Кириешки © (2004-08-02 09:48) [2]Вот так, зная Handle окна программы можно определить имя EXE :
// Для начала определяешь какому процессу принадлежит окно:
Var pProcID : ^DWORD;
begin
GetMem (pProcID, SizeOf (DWORD));
GetWindowThreadProcessId (WinHandle, pProcID);
end;
// а после этого используешь TProcessEntry32 примерно так:
function GetExeNameByProcID (ProcID : DWord) : String;
var
ContinueLoop : BOOL;
FSnapshotHandle : THandle;
FProcessEntry32 : TProcessEntry32;
begin
FSnapshotHandle := CreateToolhelp32Snapshot (TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
Result := "";
while (Integer (ContinueLoop) <> 0) and (Result="") do
begin
if FProcessEntry32.th32ProcessID = ProcID then
Result := FProcessEntry32.szExeFile;
ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
end;
end;
// Не забудь в uses добавить Tlhelp32
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.035 c