Форум: "WinAPI";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];
ВнизКак определить наименование текущего приложения? Найти похожие ветки
← →
sohat (2004-08-03 11:08) [0]Некоторая программа учитывает время работы в определенном приложении. Как перехватить ввод с клавы или с мышки меня научили - через глобальный хук. А как определить текущее приложение, которому предназначено событие от клавы или мыши?
← →
Digitman © (2004-08-03 11:17) [1]DWORD GetModuleFileName(
HMODULE hModule, // handle to module to find filename for
LPTSTR lpFilename, // pointer to buffer for module path
DWORD nSize // size of buffer, in characters
);
Parameters
hModule
Identifies the module whose executable filename is being requested. If this parameter is NULL, GetModuleFileName returns the path for the file used to create the calling process.
← →
sohat (2004-08-03 14:28) [2]Запущено три приложения, как узнать какое из них в данный момент активно (находится в фокусе)?
← →
Игорь Шевченко © (2004-08-03 15:12) [3]
> Запущено три приложения, как узнать какое из них в данный
> момент активно
То, в котором сработал глобальный хук
← →
sohat (2004-08-03 15:43) [4]То есть мое ?
А как же тогда определить приложение в котором работает юзер?
← →
Digitman © (2004-08-03 15:55) [5]
> sohat (03.08.04 15:43) [4]
> То есть мое ?
ты вообще-то себе представляешь весь механизм работы глоб.ловушки ? хотя бы на огурцах ?
← →
Игорь Шевченко © (2004-08-03 16:07) [6]
> То есть мое ?
Если хук сработал в твоем, то твое. Если хук сработал не в твоем, то чужое. DLL с хуком загружается в адресное пространство каждого приложения, в котором срабатывает этот хук.
← →
sohat (2004-08-03 17:26) [7]Честно говоря я с этим столкнулся впервые (Как и с API функциями вообще). Я понял так что ловушка ловит событие, обрабатывает его и отправляет дольше (это как на агурцах :) ). Теперь я понял так что хук может сработать несколько раз, в зависимости от того, сколько приложений откликнулось на событие. Если Вас не затруднит, подскажите пожалуйста как определить приложение на котором сработала ловушка (если можно на примере - с огурцами туго).
← →
Игорь Шевченко © (2004-08-03 17:34) [8]
> Если Вас не затруднит, подскажите пожалуйста как определить
> приложение на котором сработала ловушка
см. Digitman © (03.08.04 11:17) [1]
← →
Digitman © (2004-08-03 17:34) [9]function MouseHook(..): Integer; stdcall;
begin
... чего-то там
GetModuleFileName(0, ...); //ф-ция MouseHook вызвана в контексте приложения, имя исп.файла которого возвратила ф-ция GetModuleFileName
... чего-то там еще
end;
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.038 c