Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Read и Write в фильтре-драйвере, системное программирование 
:(
    Опции темы
coolerMen
Дата 15.2.2006, 10:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 15.2.2006

Репутация: нет
Всего: нет



Отцы!

Создал с помощью DriverStudio 3.1 скелет драйвера-фильтра.
В нем создались функции: Read(KIrp I) и Write(KIrp I);

Код

NTSTATUS FilterDrvDevice::Write(KIrp I)
{
  ULONG   dwTotalSize = I.WriteSize(CURRENT);
  PUCHAR pBuffer     =(PUCHAR)I.BufferedReadDest(); 
}
Всё работает,IRP_MJ_WRITE перехватывается,в  pBuffer всё ОК.


Код

NTSTATUS FilterDrvDevice::Read(KIrp I)
{
  ULONG   dwTotalSize = I.ReadSize(CURRENT);
  PUCHAR pBuffer     =(PUCHAR)I.BufferedReadDest(); 
}

IRP_MJ_READ перехватывается,но в pBuffer какой-то хлам.
Чё я неправильно делаю?
Спасибо!
PM MAIL   Вверх
adonin
Дата 16.2.2006, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 16.12.2005
Где: Новочеркасск Рост овская обл.

Репутация: 2
Всего: 5



Поправь метод передачи буфера данных. Скорее всего проблема здесь.

Присоединённый файл ( Кол-во скачиваний: 25 )
Присоединённый файл  Index48.htm 9,89 Kb
--------------------
Тот, кто слизывает мед с крапивы, платит за него слишком дорого. (Томас ФУЛЛЕР)
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.1029 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.