Хуки
От: Tesh США  
Дата: 01.09.06 20:38
Оценка:
Дано: Программа, которая загружает библиотеку, а та в свою очередь устанавливает хук
function ControlHook(Code: integer; wParam: word; lParam: Longint):LongInt;
begin
if code<0 then Result:=CallNextHookEx(GlobalData^.ControlHookHandle,Code, wParam, lParam)
else
begin
if Code=HSHELL_WINDOWCREATED then
begin
{.....}
end;
Result:=0;
CallNextHookEx(GlobalData^.ControlHookHandle, Code, wParam, lParam);
end;
end;

все прекрасно работает если эта программа запущена из под активного пользователя, но еси она запущена от имени другого пользователя то она не срабатывает. м.б как-то не так делаю?)
Re: Хуки
От: apple-antonovka  
Дата: 01.09.06 23:36
Оценка:
T>все прекрасно работает если эта программа запущена из под активного пользователя, но еси она запущена от имени другого пользователя то она не срабатывает. м.б как-то не так делаю?)

Что значит от имени другого пользователя? Что это за другой пользователь и на каком десктопе запускается программа?

SetWindowsHookEx устанавливает хук который распространяется на процессы пользовательского аккаунта к процессам которого у тебя есть доступ (те если ты не можешь открыть OpenProcess(PROCESS_ALL_ACCESS,.. ) какой то процесс то твой хук на него не подействует). + Хуки распространяются только на тот десктоп на котором работает устанавливающий хук поток.
Re[2]: Хуки
От: Tesh США  
Дата: 02.09.06 03:23
Оценка:
Здравствуйте, apple-antonovka, Вы писали:

AA>Что значит от имени другого пользователя? Что это за другой пользователь и на каком десктопе запускается программа?


AA>SetWindowsHookEx устанавливает хук который распространяется на процессы пользовательского аккаунта к процессам которого у тебя есть доступ (те если ты не можешь открыть OpenProcess(PROCESS_ALL_ACCESS,.. ) какой то процесс то твой хук на него не подействует). + Хуки распространяются только на тот десктоп на котором работает устанавливающий хук поток.


от имени другого пользователя, т.е запускается при помощи CreateProcessWithLogonW от имени администратора.
клавиатурный хук вполне нормально работает.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.