Драйвер FileSystem MiniFilter, скомпилированный с WDK 8.0, не отображающий вывод DbgPrint (32-битный DbgView / Win7)

Я написал и скомпилировал драйвер минифильтра с помощью утилиты сборки WDK 7.0 для 32-битной Windows 7. Затем я установил его на Windows 7 (32-битную) машину, работающую на VMWare, используя OSR 'Утилита для загрузки драйверов. Когда я запустил DbgView, я смог точно увидеть вывод DbgPrint.

Затем я скомпилировал тот же самый драйвер, используя WDK 8.0, встроенный в Microsoft Visual Studio Pro 2012 для Windows 7 (32-разрядная версия). В результате было создано 3 файла: sys, cat и inf. Я установил драйвер на Windows 7 (32-битную) машину, работающую на VMWare, щелкнув правой кнопкой мыши на файле inf и выбрав «установить», Затем я запустил службу из командной строки, которая началась нормально. Но даже при том, что это был тот же самый код / драйвер, я не могу видеть вывод DbgPrint в DbgView от драйвера, который был скомпилирован с использованием WDK 8.0 / VS2012 Pro. Вот код, который фактически выполняет печать (функция обратного вызова после операции для IRP_MJ_CREATE):

FLT_POSTOP_CALLBACK_STATUS CreateFilePostOpCallback(__in PFLT_CALLBACK_DATA Data, __in PCFLT_RELATED_OBJECTS FltObjects,
                                                    __in_opt PVOID CompletionContext, __in FLT_POST_OPERATION_FLAGS Flags)
{
    PFLT_FILE_NAME_INFORMATION fileNameInfo;
    NTSTATUS status;

    UNREFERENCED_PARAMETER(FltObjects);
    UNREFERENCED_PARAMETER(CompletionContext);
    UNREFERENCED_PARAMETER(Flags);

    status = FltGetFileNameInformation(Data, FLT_FILE_NAME_NORMALIZED|FLT_FILE_NAME_QUERY_DEFAULT, &fileNameInfo);

    if(!NT_SUCCESS(status))
        return FLT_POSTOP_FINISHED_PROCESSING;

    FltParseFileNameInformation(fileNameInfo);

    DbgPrint("%wZ created/opened", &fileNameInfo->Name);

    FltReleaseFileNameInformation(fileNameInfo);

    return FLT_POSTOP_FINISHED_PROCESSING;
}

Что мне здесь не хватает?

Ответы на вопрос(3)

Ваш ответ на вопрос