Связь драйвера с программой(постоянная пересылка)
От: Bonjio  
Дата: 27.03.10 21:32
Оценка:
Программа должна следить за реестром. Драйвер работает на основе коллбаков. Как реализовать следующее: передавать информацию о хукнутой операции реестра в основную программу?
В работе с драйверами я новичок, единственное рациональное решение которое я нашел выглядит так:
Через DeviceIoControl передаем указатель на буфер. Все отловленное через коллбаки записываем туда. Программа каждую секунду посылает через DeviceIoControl указатель на другой буфер и считывает данные из старого(обнуляет его после считывания). Коллбаки записывают в новый. Через 1 секунду опять меняем буферы местами. И так до бесконечности)
Как я успел заметить реестр меняется все время. 2 буфера используются, чтобы все не спуталось и была синхронность в чтении-записи. Насколько я понял не существует аналога DeviceIoControl от лица драйвера. Но наверняка существует более удобный способ осуществить мою задумку)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.