WMI 客户端工具
可以使用多种工具来测试驱动程序中的 WMI 支持。
              Wbemtest
作系统包括 Wbemtest 工具,它提供可用于查询 WMI 类和类实例、更改属性值、执行方法以及接收事件通知的 GUI。 连接到“root\wmi”命名空间以测试驱动程序的支持。
              Wmic
Microsoft Windows XP 及更高版本的作系统包括 Wmic 工具,该工具提供可用于发出 WMI 相关命令以测试驱动程序的命令行界面。
              Wmimofck
              wmimofck 命令可用于检查二进制 MOF 文件的语法。 还可以使用 wmimofck -t 命令生成 VBScript 文件。 可以使用此脚本测试驱动程序对 WMI 类实例查询的处理。 
              wmimofck -w 命令生成网页,这些网页可以测试查询和设置类、执行方法和接收事件。 请注意,网页不支持执行使用复杂参数或返回值的方法(例如嵌入类数组)。 在这种情况下,可以改用 Wbemtest。 有关 Wmimofck 的详细信息,请参阅 “使用 wmimofck.exe ”。
还可以使用 WMI 用户模式 API 编写自定义 WMI 客户端应用程序来测试驱动程序的 WMI 支持。
有关此用户模式 API 的详细信息(允许应用程序提供或使用 WMI 信息),请参阅 Microsoft Windows SDK 文档中的 Windows Management Instrumentation 信息。
WMI 客户端应用程序执行以下任务来测试驱动程序:
连接到 WMI。
若要连接到 WMI,应用程序可以调用组件对象模型 (COM) 函数 CoCreateInstance 来检索指向 IWbemLocator 接口的指针。 然后,应用程序调用 IWbemLocator::ConnectServer 方法以连接到 WMI。 在此调用中,应用程序接收指向 IWbemServices 接口的指针。
访问驱动程序中的信息。
为了访问信息和注册事件,应用程序使用 IWbemServices 接口的方法。
WMI IRP 和系统事件日志
严格在内核模式下发生的 WMI 错误将记录到系统事件日志中。 可以使用事件查看器检查系统事件日志。 (有关详细信息,请参阅 日志记录错误 。
此类错误的两个主要来源是对 WMI 请求的不正确答复,以及事件通知的参数不正确。 例如,如果驱动程序返回格式不正确的 WMIREGINFO 数据结构,以响应 IRP_MN_REGINFO 或 IRP_MN_REGINFO_EX 请求,系统将记录到系统事件日志中。 系统还会记录对 IoWMIWriteEvent 和 WmiFireEvent 发出 WMI 事件通知的无效调用。
WMI WDM 提供程序日志
WMI WDM 提供程序(Wmiprov.dll)处理时发生的 WMI 错误将记录到 WMI WDM 提供程序的日志文件中,Wmiprov.log。 这是一个文本文件,可在 %windir%\system32\wbem\logs\wmiprov.log中找到。 此处记录了错误(例如驱动程序的错误或缺少 MOF 资源)。 对于错误的 MOF 资源,文件 %windir%\system32\mofcomp.log可能有与错误相关的其他信息。
在早于 Windows Vista 的 Windows 版本中,可以使用 Wmimgmt.msc 应用程序更改所有 WMI 提供程序的日志记录设置。 (在 Windows 98/Me 中,请改用 Wbemcntl。可以禁用或重新启用日志记录、更改保留 WMI 日志文件的目录,以及设置此类文件的最大大小。 有关详细信息,请参阅 WMI 日志文件。