1

Windows ドライバーを作成したいのですがUMDF2、 からの出力がどこにあるのかわかりませんOutputDebugString

これは に似た私のコードですKMDF Hello World

#include <Windows.h>
#include <wdf.h>

NTSTATUS UmdfHelloWorldEvtDeviceAdd(_In_ WDFDRIVER Driver, _Inout_ PWDFDEVICE_INIT DeviceInit)
{
    UNREFERENCED_PARAMETER(Driver);

    NTSTATUS status;
    WDFDEVICE hDevice;

    OutputDebugString((LPCWSTR)"UmdfHelloWorld: EvtDeviceAdd\n");

    status = WdfDeviceCreate(&DeviceInit, WDF_NO_OBJECT_ATTRIBUTES, &hDevice);

    return status;
}

NTSTATUS DriverEntry(_In_ PDRIVER_OBJECT DriverObject, _In_ PUNICODE_STRING RegistryPath)
{
    NTSTATUS status = STATUS_SUCCESS;
    WDF_DRIVER_CONFIG config;

    OutputDebugString((LPCWSTR)"UmdfHelloWorld: DriverEntry\n");

    WDF_DRIVER_CONFIG_INIT(&config, UmdfHelloWorldEvtDeviceAdd);
    status = WdfDriverCreate(DriverObject, RegistryPath, WDF_NO_OBJECT_ATTRIBUTES, &config, WDF_NO_HANDLE);
    
    return status;
}

KMDF Hello World ドライバーを実行すると、windbgカーネル モードのデバッグで正常に出力されます。ただし、UMDF Hello World ドライバーには出力が表示されません。

これは、ドライバーを(アン)インストールする方法です。

devcon.exe install UmdfHelloWorld.inf Root\UmdfHelloWorld
devcon.exe remove Root\UmdfHelloWorld

また、ユーザー モード デバッグを使用したいのですが、UMDF ドライバーでそれを行う方法がわかりません。

4

1 に答える 1