Форум: "Потрепаться";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
ВнизЯ знаю что на этот вопрос Вы нормально не ответите, но все же: Найти похожие ветки
← →
Кириешки © (2004-07-27 09:26) [0]Как написать клавиатурного шпиона? Те шпионы, документацию по которым я читал написаны либо на Асме (я ее очень плохо знаю), либо не правильно обрабатывают прерывание. Пытался я даже их буффера клавиатуры читать, но у меня получалось слишком большое кол-во повторений при зажатой клавише. :(
ЗЫ. Мне он нужен для того чтобы создать резидента у себя на машине. Я зочу сделать программу которая знала бы определенные комбинации клавиш и делала бы какие-нибудь действия, если их отлавливала. Например сворачивала все окна, или "нажимала" на PrintScreen.
← →
Kerk © (2004-07-27 09:28) [1]
> либо не правильно обрабатывают прерывание
????
прерывание? это ты где таких монстров видел?
> Пытался я даже их буффера клавиатуры читать
АААА... держите меня...
← →
ИдиотЪ (2004-07-27 09:30) [2]ловушки пишутся
есть это, давно опубликовано и на си и на дельфи
и где сайт нарыл, с асмом ?
← →
Dmitriy O. © (2004-07-27 09:32) [3]Ключевое слово Hookkey даже на этом сайте гдет было
← →
Romkin © (2004-07-27 09:34) [4]статья о хуках есть на сайте. Там все достаточно подробно.
http://www.delphimaster.ru/articles/hooks/index.html
Единственное примечание: естественно, хук будет выдавать просто символы клавиш. Для перевода можно использовать функцию ToAscii.
← →
Кириешки © (2004-07-27 09:38) [5]>Kerk © (27.07.04 09:28) [1]
Теоретическая основа специально для >Kerk ©
Клавиатура подключена к линии запроса IRQ 1 (уровень приоритета) которая составляет прерывание INT 9h обслуживаемое модулями BIOS. Драйверы клавиатуры могут организовывать дополнительную обработку этого прерывания.
Буфер клавиатуры.
Область памяти размером 32 байта в области данных BIOS, начальный адрес который 40:1eh предназначенная для использования обработчиками 9h и 16h прерывание, а так же прикладными программами, как буфер для хранения кодов нажатых клавиш. Расчитан на 15 нажатых клавиш, генерирующих 2-х байтовые коды + 2 байта для клавиш Enter.
Буфер организуется как кольцевая очередь, доступ к которой осущ-ся с помощью указателя “головы” (head pointer) и указателя “хвоста”(tail pointer)
Указатель “хвоста” задает смещение до слова, где будет записан обработчиком прерывании 9 код буферизированный (запоминаемой клавиши).
Указатель “головы” задает смещение слова, кот. будет возвращено по запросу, сделанного ф-ми BIOS или ОС (чтение буфера).
Буфер клавиатуры – классический пример использования кольцевого буфера для организации асинхронного взаимодействия двух программ «производитель - потребитель». Асинхронность взаимодействия означает, что запись в буфер и чтение из него происходит в случайные не связанные между собой моменты времени.
>ИдиотЪ (27.07.04 09:30) [2]
Например вот сдесь :
http://hackzone.stsland.ru/33.html
← →
ИдиотЪ (2004-07-27 09:41) [6]Кириешки ©
ну нарвался на любителя асма, это хорошо)
а вот что поиск не продолжил дальше, это плохо
← →
Игорь Шевченко © (2004-07-27 09:42) [7]
> Я зочу сделать программу которая знала бы определенные комбинации
> клавиш и делала бы какие-нибудь действия, если их отлавливала.
> Например сворачивала все окна, или "нажимала" на PrintScreen.
F1 - RegisterHotKey
← →
Кириешки © (2004-07-27 09:48) [8]>Игорь Шевченко © (27.07.04 09:42) [7]
Точно блин! Лучше зарегистрировать клавиши чем шпиона писать ! (Это я абсолютно без сарказма). Спасибо, и как я сам не догадался...
Good-bye.
Ветку можно закрыть.
← →
Кириешки © (2004-07-27 09:51) [9]Извините если это как-то соркастически звучало, просто меня эмоции переполняют - через несколько часов сбудится моя недельная мечта (при помощи меня и подсказки Игоря Шевченко)
← →
TUser © (2004-07-27 09:54) [10]> статья о хуках есть на сайте. Там все достаточно подробно.
И еще на сайте А.Подгорецкого. Там к практике ближе. + исходники этих шпионов по сети разбросаны. Но лучше не надо их писать.
← →
Kerk © (2004-07-27 15:25) [11]
> Кириешки © (27.07.04 09:38) [5]
Пасибо конечно. Мне на втором курсе это уже вдолбили. :)
Вот сделай, чтоб эта хрень в NT работала, я тебе руку пожму.. :)
← →
Игорь Шевченко © (2004-07-27 15:29) [12]
> Вот сделай, чтоб эта хрень в NT работала, я тебе руку пожму..
> :)
Тоже мне, бином Ньютона - пишешь клавиатурный драйвер, взяв пример из DDK
← →
Kerk © (2004-07-27 15:32) [13]
> Тоже мне, бином Ньютона - пишешь клавиатурный драйвер, взяв
> пример из DDK
Ну-ну. из нулевого кольца окна сворачивать... давай-давай...
← →
nikkie © (2004-07-27 15:36) [14]>через несколько часов сбудится моя недельная мечта (при помощи меня и подсказки Игоря Шевченко)
между прочим, Dmitry O. посоветовал тоже самое на 10 минут раньше :))
← →
Игорь Шевченко © (2004-07-27 16:13) [15]Kerk © (27.07.04 15:32)
> Ну-ну. из нулевого кольца окна сворачивать... давай-давай...
А в чем принципиальная проблема ?
← →
Kerk © (2004-07-27 16:17) [16]
> А в чем принципиальная проблема ?
Принципиальной проблемы нет. Геморройно оно.
← →
Игорь Шевченко © (2004-07-27 16:19) [17]Kerk © (27.07.04 16:17)
> Геморройно оно.
Вызывать фукнции из Win32k ? Почему же ?
← →
Кириешки © (2004-07-27 16:20) [18]>Kerk © (27.07.04 15:25) [11]
В NT придется писать драйвер в kernel mode, это мне ненадобно.
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.049 c