Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > ОС и железо
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 17.02.2009, 22:14
Аватар для Karsh
Karsh Karsh вне форума
Активный
 
Регистрация: 22.09.2007
Адрес: SPb
Сообщения: 228
Версия Delphi: 7, 2009, XE2
Репутация: 70
По умолчанию

снятие хука в длл выглядит примерно так:
Код:
function StopHook: Boolean; export;
begin
 if PHookRec1<>nil
 then
  begin
   UnmapViewOfFile(PHookRec1); //если создавали FileMapping
   CloseHandle(hMemFile);
   PHookRec1:=nil;
  end;
 if Hooked
 then Result:=UnhookWindowsHookEx(hKeyHook)
 else Result:=true;
 Hooked:=false;
end;
а высвобождение длл происходит после FreeLibrary(DLLInstance) (если вы подключали ее динамически).

на счет второго вопроса я сомневаюсь, что сделал правильно, поэтому публиковать не буду.
Ответить с цитированием
  #2  
Старый 17.02.2009, 23:46
pixel pixel вне форума
Прохожий
 
Регистрация: 23.01.2008
Сообщения: 16
Репутация: 10
По умолчанию Hook

Добрый вечер.
Есть исходное приложение (Apptype GUI) которое только запускает процедуру хука, которая сидит в длл. Хук отслеживает нажатие левой кнопки мыши и при срабатывании делает скриншот (так называемый скринлоггер). В принципе все работает, но хотелось бы улучшить следующим:
1. Что мн нужно добавить в apptype GUI приложение что бы при ее закрытии следовал вызов функции снятия хука в длл и соответственно освобождение памяти от длл?
2. Желателен код как можно отследить нажатие не одной клавиши (кейлоггер) а комбинацию клавиш (например Alt+Shift+F10)? (это нужно что бы временно отключать скринлоггер).
Ответить с цитированием
  #3  
Старый 18.02.2009, 07:08
pixel pixel вне форума
Прохожий
 
Регистрация: 23.01.2008
Сообщения: 16
Репутация: 10
По умолчанию

спасибо конечно, но что бы мне остановить хук мне как раз и нужно обработать комбинацию клавиш (иначе как я его буду останавливать).
Ответить с цитированием
  #4  
Старый 18.02.2009, 08:50
Аватар для 0nni
0nni 0nni вне форума
Начинающий
 
Регистрация: 13.12.2008
Адрес: Туапсе
Сообщения: 161
Репутация: 20
По умолчанию

RegisterHotKey()
__________________
...сказал, и загрустил от бесспорной своей правоты
Ответить с цитированием
  #5  
Старый 21.02.2009, 08:22
pixel pixel вне форума
Прохожий
 
Регистрация: 23.01.2008
Сообщения: 16
Репутация: 10
По умолчанию

Цитата:
Сообщение от 0nni
RegisterHotKey()
спасибо, то что нужно. вот только не понятно как бы именно комбинацию Ctrl+Alt+Shift+Key сделать. по одиночке Ctrl+Key или Alt+Key и т.д. работает а вот вместе нет. И еще вопрос, как мне прогу из списка процессов убрать. нашел один код, а он похоже только для вин2000 в ХП не пашет
Ответить с цитированием
  #6  
Старый 21.02.2009, 09:46
DungeonLords DungeonLords вне форума
Активный
 
Регистрация: 21.07.2008
Сообщения: 257
Репутация: 14
По умолчанию

Цитата:
Сообщение от pixel
И еще вопрос, как мне прогу из списка процессов убрать. нашел один код, а он похоже только для вин2000 в ХП не пашет

Уже обсуждали (не здесь), поищи на форуме, но учти, что любой антивирус твою прогу заметит.
Ответить с цитированием
  #7  
Старый 21.02.2009, 12:44
pixel pixel вне форума
Прохожий
 
Регистрация: 23.01.2008
Сообщения: 16
Репутация: 10
По умолчанию

Цитата:
Сообщение от DungeonLords
Уже обсуждали (не здесь), поищи на форуме, но учти, что любой антивирус твою прогу заметит.
с чего это антивирус должен найти прогу? пока что ее обнаруживает только файер, но я его в разрешенные отправил. Я ж для своего компа делаю, а не где то шпионить (хотя )

Кстати. подскажите, почему у меня на скриншот попадает все, кроме панели эксплорера, которая внизу экрана располагается? Мне она как раз нужна, а ее нет.

Последний раз редактировалось pixel, 21.02.2009 в 19:45.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:33.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter