Форум: "Потрепаться";
Текущий архив: 2003.08.28;
Скачать: [xml.tar.bz2];
ВнизПрограммы Найти похожие ветки
← →
Proger_XP (2003-08-09 10:46) [0]Как узнать какие программы запущены на компе?
← →
MikeZ (2003-08-10 10:09) [1]Вот так:
Procedure TForm1.Button1Click(Sender: TObject);
Var
// Uses TlHelp32
Window : HWnd;
hSn : THandle;
lppe : TProcessEntry32;
Buffer : Array[0..127] Of Char;
hProc : Cardinal;
Begin
//Ищем хендл верхнего окна
Window := GetForegroundWindow;
Repeat
If (Window <> Application.Handle) And
(GetWindowText(Window, Buffer, SizeOf(Buffer)) <> 0)
Then Begin
//Ищем ID процесса
GetWindowThreadProcessId(Window, @hProc);
//Делаем снимок процесса
hSn := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, hProc);
//Получаем список всех процессов
If Process32First(hSn, lppe) Then
Repeat
//Сравниваем ID и получаем имя ехе и путь ????????????????
If lppe.th32ProcessID = hProc Then
Begin
GetWindowText(Window, Buffer, SizeOf(Buffer));
{**********************}
ListBox1.Items.Add(Buffer + " (" + lppe.szExeFile + ")");
{**********************}
End;
Until Not Process32Next(hSn, lppe);
CloseHandle(hSn);
End;
//Ищем следующее окно
Window := GetNextWindow(Window, GW_HWNDNEXT);
Until Window = 0;
End;
← →
Ketmar (2003-08-10 11:35) [2]фиг там. а у меня вот, например, программа не создаёт вообще окон. и что? или она вообще сервис. что, сервис -- уже и не программа вовсе?
намёки: MSND, PSAPI.DLL, ToolHelp.
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.08.28;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c