Я сохранил в глобальной переменной. Судя по MSDN, это позволительно. У меня только одной устройство, путаницы не будет. Мне показалось странным,...
Мое почтение всем. Пробую драйвера-фильтры, есть несколько вопросов. 1. Насколько я понимаю, IoAttachDevice возвращает указатель DEVICE_OBJECT,...
tapa А в чем дело-то было? :)
tapa Да, но для DEVICE_IO_CONTROL (и для INTERNAL_DEVICE_CONTROL) метод передачи задается в самой константе IOCTL_XXX.
Да, точно, сейчас внимательнее посмотрел. А Remaining объявлена как знаковая переменная? Если беззнаковая и 'Remaining = OutputLength -...
ntkernelspawn Ну да, мне просто показалось, что tapa пытается сам выделить/освободить SystemBuffer.
Надо полагать, что вызов должен быть таким: NdisZeroMemory((PUCHAR)pBuffer + sizeof(TELINK_QUERY_BINDING),...
Не уловил двух вещей: 1. Как инициализируется pBuffer? 2. Почему pIrp->AssociatedIrp.SystemBuffer должно указывать на некий выделенный кусок...
Ошибка в работе с выделенной через ExAllocatePoolWithTag памятью. Переписан заголовок, такое часто бывает при выходе за границу массива.
'len_text1=$-text1' -- это длина обеих строк. Должно быть 'len_text1=text2-text1' -- это будет длина первой строки.
По-моему, самое правильное -- использовать разделяемую память + примитивы синхронизации.
А в чем проблема загрузить в отладчике и посмотреть более детально, что там происходит? Гадать можно довольно долго, т.к. в приведенном куске кода...
А на какой строке вылетает? Ошибка, как я понял, PAGE_FAULT_IN_NON_PAGED_AREA? Проявляется на Win7 с антивирусами или просто на Win7? И...
JCronuz Нельзя так делать. Эти поля используются, просто это не показывается в заголовочном файле. Лучше посмотреть на PEB с помощью WinDbg,...
TermoSINteZ Не, я к тому, что ObfDereferenceObject надо делать не для EPROCESS, а для самого _TOKEN'а. А для своего TOKEN'а, вероятно, надо два...
Если требуется более интеллектуальное сравнение (в случае, если изменения во втором файлы были не бинарные, а он заново перекомпилирован), то...
TermoSINteZ if ( (*pUlong & 0xFFFFFFF8) == (ULONG)TargetToken) { *pUlong = (ULONG)SystemToken;...
Мое почтение всем. Для вычисления прожорливых системных вызовов необходимо замерить их время исполнения. Вызовы перехватываются в ntdll.dll (все...
Видимо в этом месяце вместо проститутки ajak купил волшебную траву... :)
Думаю, стоит почитать Таненбаума "Современные операционные системы". Начать, вероятно, стоит с изучения FAT. Предельно простая файловая система,...
Имена участников (разделяйте запятой).