maison
Top.Mail.Ru Yandeks.Metrika
Forum: "WinAPI";
Archive actuelle: 2002.01.08;
Télécharger: [xml.tar.bz2];

vers le bas

Maîtres, aidez .. Trouver des branches similaires


YUS   (2001-11-01 03:13) [0]

Мастера, подскажите где ошибка? Нужно получить список окон и
имена ехе файлов.

uses tlhelp32;
procédure TForm1.Button2Click (Sender: TObject);
var
Window:hWnd; hSn: THandle; lppe: TProcessEntry32;
buffer: array [0..127] of char; ht, hProc: Cardinal;
commencer
//Ищем хендл верхнего окна
Window:=GetForegroundWindow;
répéter
if (Window<>Application.Handle) and
(GetWindowText(Window,buffer,sizeof(buffer))<>0)
alors commence
//Ищем ID процесса
ht := GetWindowThreadProcessId(Window,@hProc);
//Делаем снимок процесса
hSn := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS ,hProc);
//Получаем список всех процессов
if Process32First(hSn, lppe) then
répéter
//Сравниваем ID и получаем имя ехе и путь ????????????????
if lppe.th32ProcessID = ht then
commencer
GetWindowText(Window,buffer,sizeof(buffer));
with ListView1.Items.Add do begin
Caption := buffer;
SubItems.Add(lppe.szExeFile);
fin;
fin;
until not Process32Next(hSn, lppe);
CloseHandle(hSn);
fin;
//Ищем следующее окно
Window:= GetNextWindow(window,GW_HWNDNEXT);
until Window =0;

fin;



troits   (2001-11-01 12:54) [1]

Так ,навскидку :
il y a:
if lppe.th32ProcessID = ht then
devrait être
if lppe.th32ProcessID = hProc then

Да, в CreateToolHelp32Snapshot hProc передавать не нужно.



YUS   (2001-11-01 16:40) [2]

troits,
спасибо за направление все получилось.
Действительно if lppe.th32ProcessID = hProc then , а ht-ненужен
в ht := GetWindowThreadProcessId(Window,@hProc); ,но без CreateToolHelp32Snapshot не работает



troits   (2001-11-01 17:18) [3]

Я хотел сказать, что в функции
CreateToolHelp32Snapshot
при первом параметре TH32CS_SNAPPROCESS
второй игнорируется.
Можно поставить, например, 0.



Pages: 1 branche entière

Forum: "WinAPI";
Archive actuelle: 2002.01.08;
Télécharger: [xml.tar.bz2];

à l'étage









Mémoire: 0.81 MB
Heure: 0.089 c
4-22457
Zabl
2001-11-01 13:15
2002.01.08
Problème avec Dll


4-22483
Stropal
2001-11-03 10:57
2002.01.08
Paramètres de fonction


3-21950
Ermite
2001-12-05 11:38
2002.01.08
Неявно стартуемые транзакции


3-21972
Wetnose
2001-12-06 08:30
2002.01.08
FIBs + et générateurs


6-22286
Rey
2001-10-08 18:07
2002.01.08
Les gens !!! Besoin d'ICQ!





afrikaans albanais Arabic arménien azerbaïdjanais basque Biélorusse Bulgare catalan Chinois simplifié) Chinois (traditionnel) croate Tchèque Danois Néerlandais English estonien Filipino Finlandais Français
galicien géorgien Allemand Grecque Créole haïtien hébreu Hindi Hongrois Islandais Indonesian irlandais Italien Japonais Coréen letton lituanien macédonien Malay maltais Norvégien
persan Polonais Portugais roumain Russe serbe Slovaque Slovène Espagnol Swahili Suédois Thai turc ukrainien Urdu vietnamien gallois yiddish bengali bosniaque
Cebuano espéranto gujarati Hause hmong Igbo Javanais Kannada Khmer lao latin maori Marathi mongol népalais punjabi somali tamil telugu yoruba
zoulou
Английский Français Allemand Italien Португальский Русский Espagnol