Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.12.17;
Скачать: [xml.tar.bz2];

Вниз

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

 
GEN++ ©   (2006-11-01 15:15) [0]

Такая проблема:
Есть имя процесса надо его закрыть, как это можно зделать?


 
Сергей М. ©   (2006-11-01 15:40) [1]

А если процесс нехочет, чтобы его закрыли без ведома самого процесса ?


 
GEN++ ©   (2006-11-01 15:44) [2]

Он еще как хочет но чтобы его закрыть надо его handler а как его можно по названию получить?


 
Jeer ©   (2006-11-01 15:47) [3]


> как это можно зделать?


Процесс просто требует лучшего знания хотя бы русского языка.


 
Dmitrij_K   (2006-11-01 15:54) [4]

что-то типа
SendMessage(FindWindow(nil,"Заголовок"),WM_CLOSE,0,0);


 
Stanislav ©   (2006-11-01 16:00) [5]

Dmitrij_K   (01.11.06 15:54) [4]
А если у него нет окна?


 
Сергей М. ©   (2006-11-01 16:20) [6]


> Он еще как хочет


Если уж так хочет, пусть сам по себе и завершается.
Зачем его подталкивать к смерти принудительно ? Чем это обосновано в твоем случае ?


 
Gero ©   (2006-11-01 16:41) [7]

TerminateProcess


 
Lamer@fools.ua ©   (2006-11-01 16:43) [8]

>Есть имя процесса надо его закрыть, как это можно зделать?

EnumProcesses (или Process32First + Process32Next) + TerminateProcess


 
GEN++ ©   (2006-11-01 16:48) [9]

а можно пример?


 
Gero ©   (2006-11-01 16:51) [10]

> [9] GEN++ ©   (01.11.06 16:48)

А сам не хочешь попробовать сделать?


 
GEN++ ©   (2006-11-01 16:57) [11]

я уже пробовал у меня получается не то что мне нужно.
Мне необходимо быстро завершить процесс. Примерно так-же как через Ctrl+alit+delete. Чтобы процесс закрывался моментально.


 
Anatoly Podgoretsky ©   (2006-11-01 17:02) [12]

> GEN++  (01.11.2006 16:57:11)  [11]

> Ctrl+alit+delete.

У тебя 9x
В XP это ничего не закрывает, а из диспетчера программ, уж как повезет может
и мгновенно, а может подождать придется довольно долго.


 
Gero ©   (2006-11-01 17:05) [13]

> [11] GEN++ ©   (01.11.06 16:57)

Он завершает именно через TerminateProcess, не сомневайся.


 
GEN++ ©   (2006-11-01 17:55) [14]

темнемение пример не помишает


 
Gero ©   (2006-11-01 18:13) [15]

> [14] GEN++ ©   (01.11.06 17:55)

TerminateProcess(Process, 0);


 
DVM ©   (2006-11-01 18:17) [16]

function KillTask(FileName: string): boolean;
var
 ContinueLoop: BOOL;
 SnapshotHandle: THandle;
 ProcessEntry32: TProcessEntry32;
begin
 result := false;
 SnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
 ProcessEntry32.dwSize := Sizeof(ProcessEntry32);
 ContinueLoop := Process32First(SnapshotHandle, ProcessEntry32);
 while integer(ContinueLoop) <> 0 do
 begin
   if ((UpperCase(ExtractFileName(ProcessEntry32.szExeFile)) = UpperCase(FileName))
     or (UpperCase(ProcessEntry32.szExeFile) = UpperCase(FileName))) then
       begin
         Result := ProcessTerminate(ProcessEntry32.th32ProcessID);
       end;
   ContinueLoop := Process32Next(SnapshotHandle, ProcessEntry32);
 end;
 CloseHandle(SnapshotHandle);
end;


 
DVM ©   (2006-11-01 18:19) [17]

function ProcessTerminate(dwPID: Cardinal): boolean;
var
 hProcess: THandle;
begin
 result := false;
 hProcess := OpenProcess(PROCESS_TERMINATE, FALSE, dwPID);
 if hProcess = 0 then exit;
 if not TerminateProcess(hProcess, DWORD(-1)) then
   begin
     CloseHandle(hProcess);
     exit;
   end;
 CloseHandle(hProcess);
 Result := true;
end;



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

Форум: "Основная";
Текущий архив: 2006.12.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.084 c
1-1162817427
Fedyun4ik
2006-11-06 15:50
2006.12.17
Как создать Плавующую Панель инструментов.


2-1164686543
DROWSY
2006-11-28 07:02
2006.12.17
Delphyi 6: delphi32.exe- Точка входа не найдена.


8-1146241508
MetalFan
2006-04-28 20:25
2006.12.17
Воспроизвести видео из буфера


15-1164283016
kaif
2006-11-23 14:56
2006.12.17
Газпром-сити.


15-1164274028
pasha_golub
2006-11-23 12:27
2006.12.17
Миграция под Windows Vista





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский