|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Сен 9, 2004 14:49:11 Спасибо всем за советы - извините что с опозданием - приболел тут немного... Zombyte - спасибо, вставил и такую проверку. Valterg - да я и сам понимаю что плохо так делать, но просто оно и так вроде работает. Только почему-то оно работает только по VC, NC, или DOS Navigator. При вызове из чистого DOS - клавиши не перехватывает, и когда программу одну (есть тут нужная прога - из за неё весь сыр-бор и начался - надо узнать - что там операторы нажимают при работе с прогой) загружаеш - тоже - то что нажимается в программе не перехватывается. Почему? Что перехватить надо, что бы узнать? |
|
|
Дата: Сен 9, 2004 18:43:08 вешай запись в файл на int28h |
|
|
Дата: Сен 10, 2004 12:21:15 ChelL При вызове из чистого DOS - клавиши не перехватывает, и когда программу одну (есть тут нужная прога - из за неё весь сыр-бор и начался - надо узнать - что там операторы нажимают при работе с прогой) загружаеш - тоже - то что нажимается в программе не перехватывается. Ты перехватываешь INT 16 - это не самый верхний уровень. Есть еще INT 9 - прерывание от клавиатуры. Вот при его перехвате точно в файл писать нельзя. А чтобы узнать где и чем - SOFTICE и вперед. Кстати можно просто висеть на таймере и смотреть буфер клавиатуры : 40:001a 2 Addr of keyboard buffer head (keystroke at that addr is next) 40:001c 2 Address of keyboard buffer tail 40:001e 32 Keyboard buffer. BIOS stores keystrokes here (head and tail point to addresses from 041eH to 043dH inclusive). Правда некоторые проги, работающие по INT 9, делают свой буфер. Тут опять нужен SoftIce. |
|
|
Дата: Сен 10, 2004 16:21:44 А если так сделать: перехватить 9 прерывание и заносить клавиши в буфер. Перехватить прерывание таймера и в нём записывать файл? |
|
|
Дата: Сен 10, 2004 21:15:16 Еще немного и я сяду сам писать эту прогу :) |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.063 |