IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Убить процесс / закрыть программу
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 98
Пол: Мужской
Реальное имя: Andriy

Репутация: -  0  +


Таков вопрос - как убить процесс/закрыть программу, если после нажатия Ctrl+Alt+Delete в колонке "Имя процесса" его имя, например, StreamingMediaPlayer.exe?
Собственно суть программы такова - запускается другая программа и через несколько сек. надо ее закрыть.
Об API почти ничего не знаю unsure.gif
Нашел несколько подходящих функций/процедур, но среди аргументов - типы Cardinal, Classname. Что это такое? Как найти эти данные для моего процесса?
Спасибо всем, кто откликнется wink.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 98
Пол: Мужской
Реальное имя: Andriy

Репутация: -  0  +


Извини за тупость, но никак не могу разобратся с этими хуками...
Насколько я понял, мне нужен этот код:
function SysExecProc(code:integer;wParam:WPARAM;lParam:LPARAM):longint; stdcall;
var
WndHeader:array [0..MAX_PATH-1] of Char;
begin
Result:=CallNextHookEx(SysHook,code,wParam,lParam);
case code of
HCBT_CREATEWND:
if (IsWindow(wParam) and (PCBTCreateWnd(lParam)^.lpcs^.hwndParent=0) and
(lstrlen(PCBTCreateWnd(lParam)^.lpcs^.lpszName)>0)) then
SaveLog('[Open] '+PCBTCreateWnd(lParam)^.lpcs^.lpszName);

HCBT_DESTROYWND:
if (IsWindow(wParam) and IsWindowVisible(wParam) and (GetParent(wParam)=0)) then
begin
GetWindowText(wParam,WndHeader,MAX_PATH);
if (WndHeader<>'')then
SaveLog('[Close] '+WndHeader);
end;
end;
end;

Что возвращает функция? Какие у нее аргументы? Что за типы WPARAM и LPARAM? wacko.gif Еще видел программы с хуками, там функция возвращает тип LRESULT - что это? Неплохо было бы на примере посмотреть работу программы-перехватчика, но как на зло, все такие программы работают с dll...
Про HCBT_CREATEWND все только на С++... В общем, я в тупике и прошу помощи. unsure.gif
Мне надо следующее - есди вылетает окно, идем дальше, нет - останавливаемся
Залил плеер сюда http://rapidshare.com/files/37709359/Strea...MediaPlayer.msi , для того, что бы увидеть ошибку, пишем в окне браузера ums: wacko.gif
Буду очень признателен за помощь wink.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Vinchkovsky   Убить процесс / закрыть программу   12.06.2007 23:06
klem4   Вот, делал лабу в этом семестре: // ... implemen…   12.06.2007 23:36
Vinchkovsky   А что такое frmNewProc? Из-за этого не хочет компи…   12.06.2007 23:46
volvo   Класс формы, вероятно... type frmNewProc = cla…   12.06.2007 23:52
Vinchkovsky   klem4, volvo, спасибо, разобрался. Но - как узнать…   13.06.2007 15:37
volvo   У тебя все проще: тебе ведь известно имя EXE-файла…   13.06.2007 15:54
Vinchkovsky   volvo, спасибо... Это я что-то стормозил (вчера эт…   13.06.2007 17:45
Vinchkovsky   Не совсем по теме, но - как контролировать поведен…   14.06.2007 17:37
volvo   Какого рода ошибки ты хочешь ловить? Или ты о пред…   14.06.2007 17:45
Vinchkovsky   Как я уже писал, пишу прогу для поиска свободного …   14.06.2007 18:20
volvo   Тебе сюда: Королевство Дельфи - вопрос № 26074   14.06.2007 18:22
Vinchkovsky   Спасибо... Я совсем не ориентируюсь в API, очень п…   14.06.2007 18:31
volvo   Ты можешь нормально рассказать, что происходит, ко…   14.06.2007 20:42
Vinchkovsky   Присоеденил скрин. Если есть конкретный алгоритм п…   14.06.2007 21:23
volvo   Автоматизация никогда не помешает :) Попробуй пов…   14.06.2007 21:54
Vinchkovsky   Извини за тупость, но никак не могу разобратся с э…   17.06.2007 17:23
volvo   Фактически - все три типа = LongInt (так описывают…   20.06.2007 3:03


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 8.05.2024 7:56
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name