我有一个过滤器驱动程序(类似于以下):
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 中没有输出任何内容,就好像它从未被调用过一样。
请注意,我使用的是网络打印机,而不是连接到机器的本地打印机。