2 последних параметра этой функции: EaBuffer For device and intermediate drivers, this parameter must be a NULL pointer. EaLength For device and intermediate drivers, this parameter must be zero. Могу ли я использовать их для передачи параметров обработчику DispatchCreate? и вообще можно ли как-то передавать данные в этот обработчик?
Можно заюзать и DispatchControl, но лучше через DispatchCreate. По идее эти параметры присутствуют в ZwCreateFile и используются, например, сетевыми TDI драйверами... Но как только пытаюсь указать при создании эти 2 параметра сразу вылазит ошибка STATUS_EA_LIST_INCONSISTENT, при этом обработчик в драйвере даже не вызывается.
Quark NtCreateFile -> IoCreateFile -> Код (Text): 02391 NTSTATUS 02392 IoCheckEaBufferValidity( 02393 IN PFILE_FULL_EA_INFORMATION EaBuffer, 02394 IN ULONG EaLength, 02395 OUT PULONG ErrorOffset 02396 ) Да и в описании к (Io/Nt)CreateFile явно написано: Так что не стоит пихать туда что попалоOsen Расскажешь как-нибудь на досуге как через DeviceIoControl передават данные в IRP_MJ_CREATE хендлер