Главная Главная страница форума Регистрация Вход
Новые сообщения Участники форума Правила форума Поиск
Страница 1 из 11
Модератор форума: stalker, Ekz 
Форум » Все о Delphi » Начинающим » Убрать проццесс
Убрать проццесс
russerДата: Понедельник, 26.01.2009, 18:22 | Сообщение # 1
Ранг 1
Группа: Проверенные
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Спасибо но вопросы теперь другие
Как сделать так чтобы при запуске определеного процесса он сразу вырубался
Пример пользователь запускает hl.exe и он не запускаеться ?
прога ждет пока он запуститься кстати надо сделать так чтобы ее не было видно?
 
AdminДата: Понедельник, 26.01.2009, 18:32 | Сообщение # 2
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Это будет вирус? Плохая программа? Незнаю какой программе нужны такие функции кроме как вирусу.
/publ/30-1-0-140
/publ/30-1-0-141
изучай.


Не оказываю помощь через личные сообщения и ICQ
 
russerДата: Понедельник, 26.01.2009, 18:48 | Сообщение # 3
Ранг 1
Группа: Проверенные
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Кароче это не вирус программу попросил написать учетель информатики у нас в школе постоянно запускают кс а мне надо сделать такую программу которая бы ее сразу вырубала
Пс как сделать так чтоб если это процесс запустился то она его сразу убирала
Код работает только если запустить в начале программу которую надо закрыть а потом мою программу
 
AdminДата: Понедельник, 26.01.2009, 18:57 | Сообщение # 4
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Ну значит ты так сделал. Код в студию.
А вообще это можно запретить средствами Windows


Не оказываю помощь через личные сообщения и ICQ
 
russerДата: Понедельник, 26.01.2009, 19:02 | Сообщение # 5
Ранг 1
Группа: Проверенные
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Код из первои статьи я знаю что он не обнавляеться а просто один раз выключает процесс а мне надо сделать так чтобы он обновлялся
пробовал form1.refresh;
надо придумать какото алгоритм обновления вот только какой =)
 
AdminДата: Понедельник, 26.01.2009, 19:04 | Сообщение # 6
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
form1.refresh это перерисовка формы. Это совсем не то.
ну просто по таймеру нужно. А ты тупо по созданию формы (как я понял)


Не оказываю помощь через личные сообщения и ICQ
 
russerДата: Понедельник, 26.01.2009, 19:12 | Сообщение # 7
Ранг 1
Группа: Проверенные
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Да но по таймеу тоже както е очень получится
только через определенное время или буцдет все вешать
алгоритмик бы какойнибудь

Добавлено (26.01.2009, 16:12)
---------------------------------------------
Я сделал с таймером с интервалом в 1 вроде норм работает

 
AdminДата: Понедельник, 26.01.2009, 19:22 | Сообщение # 8
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Да куда к тебе 1 то? хватит и 50. Чтобы не мучиться со скрытием проги из диспетчера задач просто назови программу svhost и все. Хотя и можно будет ее найти но в школе это никому не будет нужно.

Не оказываю помощь через личные сообщения и ICQ
 
russerДата: Понедельник, 26.01.2009, 19:23 | Сообщение # 9
Ранг 1
Группа: Проверенные
Сообщений: 15
Награды: 0
Репутация: 0
Статус: Offline
Не подскажешь как форму убрать ?
 
AdminДата: Понедельник, 26.01.2009, 19:26 | Сообщение # 10
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Гдето в статьях есть поищи.

Не оказываю помощь через личные сообщения и ICQ
 
ZuByДата: Пятница, 10.07.2009, 18:20 | Сообщение # 11
Ранг 5
Группа: Проверенные
Сообщений: 118
Награды: 2
Репутация: 2
Статус: Offline
ShowWindow(Form1.handle, Sw_hide);
ShowWindow(application.handle, sw_hide);

Добавлено (10.07.2009, 18:20)
---------------------------------------------
вот так можно вырубить процесс, если знать заголовок...

PostMessage(FindWindow(nil,'Косынка'), WM_QUIT, 0,0);


http://www.zubymplayer.com

Сообщение отредактировал ZuBy - Пятница, 10.07.2009, 18:21
 
AdminДата: Суббота, 11.07.2009, 21:52 | Сообщение # 12
Ранг 10
Группа: Пользователи
Сообщений: 1268
Награды: 16
Репутация: 2
Статус: Offline
Уточню, это не вырубить а послать сообщение приложению чтобы оно завершилось. Если я не ошибаюсь (нехочу искать) то зависшее приложение не завершится.

Не оказываю помощь через личные сообщения и ICQ
 
ZuByДата: Воскресенье, 12.07.2009, 15:32 | Сообщение # 13
Ранг 5
Группа: Проверенные
Сообщений: 118
Награды: 2
Репутация: 2
Статус: Offline
да... эта функция предназначено для того чтобы приложение завершилось правильно (т.е. якобы Windows послал)...
а если убивать приложение то используйте

Code
function KillTask(ExeFileName: string): integer;
const
   PROCESS_TERMINATE = $0001;
var
   ContinueLoop: BOOL;
   FSnapshotHandle: THandle;
   FProcessEntry32: TProcessEntry32;
begin
   result := 0;

   FSnapshotHandle := CreateToolhelp32Snapshot
     (TH32CS_SNAPPROCESS, 0);
   FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
   ContinueLoop := Process32First(FSnapshotHandle,
     FProcessEntry32);

   while integer(ContinueLoop) <> 0 do
   begin
     if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
       UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
       UpperCase(ExeFileName))) then
       Result := Integer(TerminateProcess(OpenProcess(
         PROCESS_TERMINATE, BOOL(0), FProcessEntry32.th32ProcessID), 0));
     ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
   end;
   CloseHandle(FSnapshotHandle);
end;


http://www.zubymplayer.com
 
Форум » Все о Delphi » Начинающим » Убрать проццесс
Страница 1 из 11
Поиск:

Copyright DelphiDevelop.ru © 2008-2018
Хостинг от uCoz