![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Stran_nik |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 4.11.2002 Репутация: нет Всего: нет |
У меня есть драйвер WDM который создает событие след. образом (Это В DriverEntry) :
и далее когда нужно его послать (по приходу прерывания):
И по идеи далее обычная программа уже в юзермоде должно поймать этот Event и на него срегировать. Проблема в том, что как только я вставляю эти строки в драйвер, под 2000 я вижу синий экран, а под 98 драйвер просто перестает инициализироватся. Что здесь нитак? Или как по другому драйвер может сообщить программе о том, что пришло прерывание от устройства? (Ест-но путь постоянного опроса драйвера негодится) |
||||
|
|||||
| Artem |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.8.2002 Репутация: нет Всего: нет |
Вроде все верно... единственное что я делал--запихивал
UNICODE_STRING EventName; HANDLE EventHandle; и pEventObject в DEVICE_EXTENSION. Вряд ли это влияет на что-то, но все же... Попробуйте побольше if-ов напихать типа: if(pEventObject) { KeSetEvent(pEventObject,0,FALSE); KeClearEvent(pEventObject); } Я тоже одно время долго не мог избавиться от "синего экрана" пока не нашел какие-то глупые ошибки в самой процедуре обработки прерываний. Sorry если эти советы окажутся очевидными... Артем. |
|||
|
||||
| Stran_nik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 4.11.2002 Репутация: нет Всего: нет |
Нет ифы не помогают. Расширение драйвера у меня оказалось скрыто в классах, поэтому дотянутся висьма проблематично. Ты писал драйвер под НТ, или именно WDM? Просто я использую в своей программе библиотеки NuMegи. Может это их послдетствия... |
|||
|
||||
| Artem |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.8.2002 Репутация: нет Всего: нет |
"Ты писал драйвер под НТ, или именно WDM? "
Да я писал драйвер под НТ, без использования библиотеки NuMegи. Кстати, ты в WIN2000 используешь динамическую загрузку? ПРосто когда я пытался использовать NuMegи у меня были с ней проблемы именно с динамической загрузкой... Artem. |
|||
|
||||
| Stran_nik |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 4.11.2002 Репутация: нет Всего: нет |
Нет пока динамической загрузки не добился, хотя по моему на каком то примере я видел, что это происходило, вроде бы.
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |