как зарегистрировать драйвер верхнего фильтра для всех классов принтеров через файл .inf (раздел AddReg) - PullRequest
2 голосов
/ 19 августа 2010

У меня есть драйвер фильтра (аналогично следующему):

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, как будто она никогда не вызывается.
Обратите внимание, что я использую сетевой принтер, а не локальный принтер, подключенный к машине.

...