Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.14;
Скачать: CL | DM;

Вниз

Закрытие процесса   Найти похожие ветки 

 
xman ©   (2003-04-28 21:12) [0]

Как закрыть нужный мне процесс, если я знаю только его имя?
пытался это осуществить через terminateprocess(handle,exitcode);
как тогда узнать handle процесса если есть только имя?

У меня в проге все процессы и длл показуются listbox"e в порядке их запуска.


 
Guerrillero ©   (2003-04-29 00:39) [1]

а как заполняешь listbox ?


 
xman ©   (2003-04-29 13:43) [2]

Я не помню. Вроде бы через какой-то enum*
короче выдает список процессов в порядке запуска и полным путем


 
xman ©   (2003-04-30 10:50) [3]

как закрыть процесс зная его только путь.

выводил я процессы в listbox так:
pe.dwSize:=SizeOf(pe);
hSnap:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
If Process32First(hSnap,pe) then begin
listbox1.Items.Add(pe.szExeFile);
While Process32Next(hSnap,pe) do listbox1.Items.Add (pe.szExeFile);
end;
form1.Label1.Caption:=form1.listbox1.Items.Strings[0];

HELP!


 
Guerrillero ©   (2003-04-30 13:40) [4]

не самый лучший способ, но работает:
1) Заполняешь:
var
PE: TProcessEntry32;
hSnap: THandle;
begin
ListBox1.Items.Clear;
PE.dwSize := SizeOf(TProcessEntry32);
hSnap := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if hSnap = -1 then RaiseLastWin32Error;
if Process32First(hSnap,PE) then
begin
Listbox1.Items.AddObject(PE.szExeFile,TObject(PE.th32ProcessID));
while Process32Next(hSnap,PE) do
Listbox1.Items.AddObject(PE.szExeFile,TObject(PE.th32ProcessID));
end;
CloseHandle(hSnap);

2) закрыть процесс:
function TForm1.TerminateProcessEx(const AItemIndex: Integer): Boolean;
var
ID: Cardinal;
hProcess: THandle;
begin
Result := False;
ID := Cardinal(ListBox1.Items.Objects[AItemIndex]);
hProcess := OpenProcess(PROCESS_TERMINATE,FALSE,ID);
if hProcess = 0 then RaiseLastWin32Error;
Result := TerminateProcess(hProcess,0);
CloseHandle(hProcess);
end;



Страницы: 1 вся ветка

Текущий архив: 2003.07.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
6-44785
FZ*XupypG
2003-05-04 01:57
2003.07.14
Подвисание при обращениии по несущ. адресу.


4-44948
Alex_x
2003-05-14 09:38
2003.07.14
API функции для определения конфигурации компютера


1-44672
Луарвик
2003-07-02 15:36
2003.07.14
Check List Box


14-44838
McSimm
2003-06-26 11:31
2003.07.14
Клиент для форумов. Dolphin


6-44788
snoup
2003-05-05 23:50
2003.07.14
Как в TWebBrowser поменять кодировку?