У меня есть драйвер фильтра (аналогично следующему):
NTSTATUS MyFilterFunction (
__in PDEVICE_OBJECT DeviceObject,
__in PIRP Irp
){
NTSTATUS status = STATUS_SUCCESS;
// do the filtering
DbgPrint("Filtering with MyFilterFunction");
return status;
}
NTSTATUS DriverEntry (
__in PDRIVER_OBJECT DriverObject,
__in PUNICODE_STRING RegistryPath
){
NTSTATUS status = STATUS_SUCCESS;
DriverObject->MajorFunction[IRP_MJ_CREATE] = MyFilterFunction
return status;
}
Я создал этот inf файл, чтобы прикрепить фильтр к стеку драйверов класса принтеров.
Проблема в том, что при печати функция DbgPrint ничего не выводит в DebugView, как будто она никогда не вызывается.
Обратите внимание, что я использую сетевой принтер, а не локальный принтер, подключенный к машине.