驱动程序测试工具

驱动程序测试工具技术概述。

若要开发驱动程序测试工具,需要以下标头:

有关编程指南,请参阅 驱动程序测试工具

标题 说明
WppRecorderConfigure 宏 WppRecorderConfigure 方法启用或禁用 WPP 打印到的默认日志。
WppRecorderDumpLiveDriverData 宏 WppRecorderDumpLiveDriverData 方法获取与指定的机上跟踪记录器日志关联的缓冲区。
WppRecorderGetTriageInfo 宏 WppRecorderGetTriageInfo。
WppRecorderLinkCounters 宏 WppRecorderLinkCounters。
WppRecorderLogCreate 宏 WppRecorderLogCreate 方法创建一个缓冲区以包含记录器日志。
WppRecorderLogDelete 宏 WppRecorderLogDelete 方法删除指定的记录器日志。
WppRecorderLogSetIdentifier 宏 WppRecorderLogSetIdentifier 方法设置记录器日志的字符串标识符。

枚举

 
FAULT_INFORMATION_ARCH

定义系统体系结构类型的值。
FAULT_INFORMATION_ARM64_TYPE

定义错误类型的值。
PCW_CALLBACK_TYPE

PCW_CALLBACK_TYPE枚举定义要发送到计数器集的已注册提供程序的通知类型。 提供程序将指向此枚举的指针作为参数传递给 PcwCallback 函数。
WPP_RECORDER_TRI_STATE

WPP_RECORDER_TRI_STATE 枚举类型定义 WPP 用于某些结构成员和函数参数的三个值。

函数

 
ASSERTMSG

ASSERTMSG 测试表达式。 如果表达式为 false,它将中断内核调试器,并向它发送指定的消息。
DbgBreakPoint

DbgBreakPoint 例程会中断内核调试器。
DbgBreakPointWithStatus

DbgBreakPointWithStatus 例程会中断内核调试器,并将 Status 的值发送到调试器。
DbgPrint

DbgPrint 例程将消息发送到内核调试器。
DbgPrintEx

如果满足指定的条件,DbgPrintEx 例程会将字符串发送到内核调试器。
DbgPrompt

DbgPrompt 例程在内核调试器的显示设备上显示调用方指定的用户提示字符串,并获取用户响应字符串。
EtwActivityIdControl

EtwActivityIdControl 函数创建、查询和设置当前活动标识符。
ETWENABLECALLBACK

EtwEnableCallback 函数是驱动程序提供的可选回调函数,用于接收启用或禁用通知。
EtwEventEnabled

EtwEventEnabled 函数验证是否启用了事件。
EtwProviderEnabled

EtwProviderEnabled 函数验证是否为指定级别的事件日志记录启用了提供程序,并关键字 (keyword) 。
EtwRegister

EtwRegister 函数注册事件提供程序,并且必须先调用该提供程序,然后提供程序才能开始跟踪。
EtwUnregister

EtwUnregister 函数取消注册事件提供程序,必须在提供程序退出之前调用该函数。
EtwWrite

EtwWrite 函数是一个跟踪函数,用于在内核模式驱动程序代码中发布事件。
EtwWriteEx

EtwWriteEx 函数是一个跟踪函数,用于发布支持在内核模式驱动程序代码中进行筛选的事件。
EtwWriteString

EventWriteString 函数是无需复杂数据时可以使用的跟踪函数。 此函数类似于调试 print 语句。
EtwWriteTransfer

EtwWriteTransfer 函数标记将两个活动链接在一起的事件;这种类型的事件称为传输事件。
imp_WppRecorderGetCounterHandle

WppRecorderGetCounterHandle 方法。
imp_WppRecorderIsDefaultLogAvailable

WppRecorderIsDefaultLogAvailable 方法确定默认日志是否可用。
imp_WppRecorderLogGetDefault

WppRecorderLogGetDefault 方法获取默认记录器日志的句柄。
KdBreakPointWithStatus

KdBreakPointWithStatus 宏会中断内核调试器,并将 Status 的值发送到调试器。
KdChangeOption

KdChangeOption 例程访问和更改与内核调试相关的内核状态。
KdDisableDebugger

KdDisableDebugger 例程禁用内核调试器。
KdEnableDebugger

KdEnableDebugger 例程在调用 KdDisableDebugger 例程后重新启用内核调试器,禁用内核调试器。
KdPrint

KdPrint 宏将消息发送到内核调试器。
KdPrintEx

如果满足指定的条件,KdPrintEx 宏会将字符串发送到内核调试器。调用 KdPrintEx 需要双括号。
KdRefreshDebuggerNotPresent

KdRefreshDebuggerNotPresent 宏刷新KD_DEBUGGER_NOT_PRESENT全局内核变量的值。
KeInitializeTriageDumpDataArray

初始化会审转储数据块数组。
PCW_CALLBACK

提供程序可以实现PCW_CALLBACK函数,以在使用者执行某些操作(例如在查询中添加或删除计数器)时接收通知。
PcwAddInstance

PcwAddInstance 函数将计数器集的指定实例添加到使用者缓冲区。
PcwCloseInstance

PcwCloseInstance 函数关闭计数器集的指定实例。
PcwCreateInstance

PcwCreateInstance 函数为指定的已注册计数器集创建一个新实例。
PcwRegister

PcwRegister 函数将调用方注册为指定计数器集的提供程序。
PcwUnregister

PcwUnregister 函数取消注册指定计数器集的提供程序。
RECORDER_CONFIGURE_PARAMS_INIT

RECORDER_CONFIGURE_PARAMS_INIT 函数用于初始化 RECORDER_CONFIGURE_PARAMS 结构。
RECORDER_LOG_CREATE_PARAMS_INIT

RECORDER_LOG_CREATE_PARAMS_INIT 函数用于初始化 RECORDER_LOG_CREATE_PARAMS 结构。
RECORDER_LOG_CREATE_PARAMS_INIT_APPEND_POINTER

RECORDER_LOG_CREATE_PARAMS_INIT_APPEND_POINTER 方法使用指向链接日志的指针初始化RECORDER_LOG_CREATE_PARAMS。
SeEtwWriteKMCveEvent

SeEtwWriteKMCveEvent 函数是一个跟踪函数,用于在内核模式驱动程序中检测到安全漏洞攻击尝试时发布事件。
vDbgPrintEx

如果满足某些条件,vDbgPrintEx 例程会将字符串发送到内核调试器。
vDbgPrintExWithPrefix

如果满足指定的某些条件,vDbgPrintExWithPrefix 例程会将字符串发送到内核调试器。 此例程可以将前缀追加到调试器输出,以帮助组织调试结果。
WppRecorderConfigure

了解 WppRecorderConfigure 方法如何启用或禁用 WPP 打印到的默认日志。
WppRecorderDumpLiveDriverData

了解 WppRecorderDumpLiveDriverData 方法如何获取与指定的飞行跟踪记录器日志关联的缓冲区。
WppRecorderGetTriageInfo

了解 WppRecorderGetTriageInfo 方法。
WppRecorderLinkCounters

了解 WppRecorderLinkCounters 方法如何使用序列号合并驱动程序在不同缓冲区中捕获的日志。
WppRecorderLogCreate

了解 WppRecorderLogCreate 方法如何创建缓冲区以包含记录器日志。
WppRecorderLogDelete

了解 WppRecorderLogDelete 方法如何删除指定的记录器日志。
WppRecorderLogDumpLiveData

WppRecorderLogDumpLiveData 方法返回指向日志缓冲区标头和数据的不透明指针,以便它们可以保存在实时故障转储中。
WppRecorderLogSetIdentifier

了解 WppRecorderLogSetIdentifier 方法如何设置记录器日志的字符串标识符。

结构

 
DEBUG_DEVICE_DESCRIPTOR

详细了解:DEBUG_DEVICE_DESCRIPTOR结构
DEBUG_TRANSPORT_DATA

描述传输要使用的调试传输特定数据。
FAULT_INFORMATION

包含用于在设备上设置故障报告的信息。
FAULT_INFORMATION_ARM64

包含 ARM64 系统的错误信息。
FAULT_INFORMATION_ARM64_FLAGS

定义错误信息。
KBUGCHECK_CALLBACK_RECORD

详细了解:KBUGCHECK_CALLBACK_RECORD结构
KBUGCHECK_REASON_CALLBACK_RECORD

详细了解:KBUGCHECK_REASON_CALLBACK_RECORD 结构
KBUGCHECK_REMOVE_PAGES

详细了解:KBUGCHECK_REMOVE_PAGES结构
KBUGCHECK_SECONDARY_DUMP_DATA_EX

详细了解:_KBUGCHECK_SECONDARY_DUMP_DATA_EX结构
KBUGCHECK_TRIAGE_DUMP_DATA

详细了解:_KBUGCHECK_TRIAGE_DUMP_DATA 结构
KTRIAGE_DUMP_DATA_ARRAY

详细了解:_KTRIAGE_DUMP_DATA_ARRAY 结构
MCG_CAP

详细了解:MCG_CAP 结构
PCW_CALLBACK_INFORMATION

PCW_CALLBACK_INFORMATION联合提供有关要发送的通知的详细信息。 提供程序将指向此联合的指针作为参数传递给 PcwCallback 函数。
PCW_COUNTER_DESCRIPTOR

PCW_COUNTER_DESCRIPTOR结构提供有关要发送的通知的详细信息。
PCW_COUNTER_INFORMATION

PCW_COUNTER_INFORMATION 结构描述标识计数器集的特定实例的属性。
PCW_DATA

PCW_DATA 结构描述与实例关联的数据块数组。
PCW_MASK_INFORMATION

PCW_MASK_INFORMATION结构提供有关要发送到提供程序的通知的详细信息。 此信息作为 Info 参数的一部分传递给 PcwCallback 函数。 此掩码信息包含在PCW_CALLBACK_INFORMATION中。
PCW_REGISTRATION_INFORMATION

PCW_REGISTRATION_INFORMATION结构提供有关提供程序和计数器集的详细信息。
RECORDER_CONFIGURE_PARAMS

RECORDER_CONFIGURE_PARAMS 结构是 WppRecorderConfigure 方法的输入参数,用于启用或禁用 WPP 打印到的默认日志。
RECORDER_LOG_CREATE_PARAMS

RECORDER_LOG_CREATE_PARAMS 结构是 WppRecorderLogCreate 方法的输入参数。
WPP_TRIAGE_INFO

用于查找 WER 报告的 WPP 日志。