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

Вниз

Explore.exe   Найти похожие ветки 

 
aga ©   (2003-02-21 19:29) [0]

кто знает как завершит процесс "Explore.exe"?


 
Anatoly Podgoretsky ©   (2003-02-21 19:34) [1]

Также как и любой другой.


 
aga ©   (2003-02-21 19:55) [2]

а можно примерчик?я просто даже не знаю как завершить любой процесс...


 
Anatoly Podgoretsky ©   (2003-02-21 20:13) [3]

Тогда зачем спрашиваешь про Explore


 
aga ©   (2003-02-21 20:26) [4]

а может всё таки покажете пример??!


 
ZZ ©   (2003-02-21 23:57) [5]

А в yandex"е поискать слабо?


 
Nemo ©   (2003-02-22 01:43) [6]

в любой нужной процедуре вызываешь
EnumWindows(@ParentWindows, integer(PChar(FName)));

// А это сама функция ParentWindows
function ParentWindows(Wnd: HWND; Info: Pointer): Boolean; stdcall;
var FName: array[0..MAX_PATH] of Char;
begin
// Возвращает файл которому пренадлежит это окно
Windows.GetWindowModuleFileName(Wnd, FName, MAX_PATH);
// Если это искомый файл, то закрываем это окно
if "explorer.exe" = ExtractFileName(UpperCase(StrPas(Info))) then SendMessage(Wnd,WM_CLOSE,0,0);
end;


 
aga ©   (2003-02-22 14:02) [7]

2Nemo
что-то твоя подсказка не работает:(


 
DVM ©   (2003-02-23 08:57) [8]


> SendMessage(Wnd,WM_CLOSE,0,0);

Ха-Ха. Так его не закрыть. Можно попробовать TerminateProcess.


 
Aga ©   (2003-02-23 13:12) [9]

2DVM
я знаю такую ф-цию но незнаю как ид процесса найти, иожет подскажешь?


 
DVM ©   (2003-02-23 14:37) [10]

http://delphi.chertenok.ru/download/processviewer.zip


 
aga ©   (2003-02-23 17:14) [11]

мда...

а я вот и ответ нашел:

const
PROCESS_TERMINATE = $0001;

procedure TForm1.Button1Click(Sender: TObject);
var
TheWindow: hwnd;
ProcessId: integer;
ProcessHandle: cardinal;
begin
TheWindow := FindWindow("Progman", nil);
GetWindowThreadProcessID(TheWindow, @ProcessId);
ProcessHandle := OpenProcess(PROCESS_TERMINATE, FALSE, ProcessId);
TerminateProcess(ProcessHandle,4);


end;


 
DVM ©   (2003-02-24 09:26) [12]

Можно еще по имени exe файла процесс закрыть в том примере на который ссылка выше есть именно это.
Кстати под Win2000 и WinXp даже с помощью TerminateProcess закрыть Explorer не удается (или удается но не с первого раза) - он запускается вновь.


 
aga ©   (2003-02-24 13:03) [13]

да мне кстати это и нужно было - перезагрузить експлорер, правда я думал что нужно завершить а потом вновь запустить...
Всё равно всем спасибо!



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

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

Наверх




Память: 0.49 MB
Время: 0.021 c
4-67627
frizZ.
2003-02-22 22:24
2003.04.21
GetWindowPlacement


4-67606
Psibug2
2003-02-19 12:52
2003.04.21
Окно своими руками, пригодное для Opengl...


14-67466
asdqwer
2003-04-05 07:45
2003.04.21
Очень интересно.


1-67234
Вася
2003-04-10 10:29
2003.04.21
Консольное приложение и timer


14-67442
GEN
2003-04-05 01:19
2003.04.21
ТЗ на разработку Soft-а.