【问题标题】:Umdf2 Hello World Driver, Where to see output?Umdf2 Hello World 驱动程序,在哪里查看输出?
【发布时间】:2020-11-02 10:39:31
【问题描述】:

我想写一个UMDF2的windows驱动,不知道在哪里可以看到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 驱动程序执行此操作。

【问题讨论】:

标签: windows windbg visual-studio-debugging umdf outputdebugstring


【解决方案1】:

Umdf2 Hello World 驱动程序,在哪里查看输出?

正如 Lex 所说,您可以使用 DebugView 查看 UMDF 驱动程序的输出。

Besdies,你可以试试use WPP Software Tracing in UMDF Drivers

【讨论】:

  • 或者您可以使用 WPP 软件在 UMDF 驱动程序中进行跟踪。见this document。希望对你有帮助。
  • @AkshdeepSingh 您是否尝试单击调试视图中的Capture 菜单并尝试启用各种选项?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-10-05
  • 1970-01-01
  • 2022-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多