Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как определить какое приложение запускается [D6, WinXP]


Дубинин Алексей ©   (2003-10-31 21:55:00) 

Здраствуйте. Вопрос такой. Как можно определить какое приложение запускается, зная путь к исполняемому файлу.
Т.е. программа должна определить, что, например, запускается калькулятор, причем до этого в программе написан путь к исполняемому файлу. Дайте хотя бы идею...как это можно выполнить. Заранее спасибо...


Дубинин Алексей   (2003-11-02 18:33:00) [1]

Отвечу сам себе:

function SysMsgProc1(code : integer; wParam : word; lParam : longint) : longint; stdcall;
begin
if code < 0 then
begin
Result:= CallNextHookEx(GlobalData^.SysHook1, Code, wParam, lParam);
Exit;
end;
//************************
if code = HSHELL_WINDOWCREATEDthen
if GlobalData^.H>0 then SendMessage(GlobalData^.H, WM_CREATEAPP, wParam, lParam);
CallNextHookEx(GlobalData^.SysHook1, Code, wParam, lParam);
Result:= 0;
end;

GlobalData^.SysHook1 := SetWindowsHookEx( WH_SHELL, @SysMsgProc1, HInstance, 0);

Спасибо jonni


Song   (2003-11-02 09:38:00) [2]

Ошибка в 17-ой строке, Алексей.


Дубинин Алексей   (2003-11-01 22:01:00) [3]


> Игорь Шевченко © (31.10.03 22:13) [1]
> В форуме "система" был способ узнавания, что запустилось
> приложение.


Просмотрел много, но ничего не нашел. Воспользовался вариантом Юрия Зотова использовать WH_SHELL в глобальной ловушке, но ничего не вышло. Пробовал установить ловушку на WH_GETMESSAGE и отлавливать WM_CREATE, но не ловится данное сообщение. Помогите пожалуйста.


Игорь Шевченко   (2003-10-31 22:13:00) [4]

В форуме "система" был способ узнавания, что запустилось приложение.


Наверх

Титульная страница Поиск, карта сайта Написать письмо