Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как получить список запущеных exe-шников? Не окон, а файлов. [D5, Win95/98, WinME, NT4, Win2k, WinXP]


MikeZ ©   (2002-08-22 16:52:00) 

См. Subj.


BJValentine   (2002-08-22 22:39:00) [1]

Esu, ты гений! Спасибо!


PVOzerski   (2002-08-22 19:04:00) [2]

Что ж, M$, оказывается, прибавил совместимости. Хотя автор вопроса, согласно тому, что он выставил во флажках, заинтересован в совместимости и с NT4. А у меня Help старый... :^)


Ученик   (2002-08-22 18:59:00) [3]

>PVOzerski © (22.08.02 18:51)
CreateToolhelp32Snapshot

Requirements
Windows NT/2000: Requires Windows 2000.
Windows 95/98: Requires Windows 95 or later.
Header: Declared in Tlhelp32.h.
Library: Use Kernel32.lib.


PVOzerski   (2002-08-22 18:51:00) [4]

2Ученик © (22.08.02 18:44):
W"2K/XP относятся тоже к линии NT


Ученик   (2002-08-22 18:44:00) [5]

>PVOzerski © (22.08.02 18:41)
А также для >=Windows 5.0 (Windows 2000)


PVOzerski   (2002-08-22 18:41:00) [6]

>Esu ©
Это верно только для W"9x/ME, но не для линейки NT. Там по-хорошему эту инфу надо как-то добывать через функции ntdll.dll, но проще делать это через функции библиотеки psapi.dll (только вот есть у меня нехорошее подозрение, что она не ставится в NT при инсталляции по умолчанию, хотя и доступна для скачивания в Сети. Доку поищите в Сети.


MikeZ   (2002-08-22 18:29:00) [7]

Огромное спасибо.
Для тех, кому может понадобится:

Var
Han : THandle;
ProcStruct : TProcessEntry32;
sID : String;


Esu   (2002-08-22 16:58:00) [8]

uses ...TlHelp32,...
...
han := CreateToolhelp32Snapshot( TH32CS_SNAPALL, 0 );
ProcStruct.dwSize := sizeof( PROCESSENTRY32 );
if Process32First( han, ProcStruct ) then
begin
repeat
sID := ExtractFileName( ProcStruct.szExeFile );
memo1.lines.add(sID);
until not Process32Next( han, ProcStruct );
end;
CloseHandle( han );
...


Наверх

Титульная страница Поиск, карта сайта Написать письмо