VideoPortRegisterBugcheckCallback 函数 (video.h)

VideoPortRegisterBugcheckCallback 函数允许视频微型端口驱动程序注册或挂钩在发生指定 bug 检查时调用的回调。

语法

VIDEOPORT_DEPRECATED VIDEOPORT_API VP_STATUS VideoPortRegisterBugcheckCallback(
  [in] IN PVOID                    HwDeviceExtension,
  [in] IN ULONG                    BugcheckCode,
  [in] IN PVIDEO_BUGCHECK_CALLBACK Callback,
  [in] IN ULONG                    BugcheckDataSize
);

参数

[in] HwDeviceExtension

指向微型端口驱动程序的设备扩展的指针。

[in] BugcheckCode

指示要回调的 bug 检查代码。 目前,微型端口驱动程序只能注册 bug 检查代码0xEA。

[in] Callback

指向微型端口驱动程序的 HwVidBugcheckCallback 函数的指针。 此函数必须是非分页的,并且不得引用可分页代码或数据。 微型端口驱动程序可以将此参数设置为 NULL,以指示应取消调用检查 bug。

[in] BugcheckDataSize

指示BUGCHECK_DATA_SIZE_RESERVED之和,以及微型端口驱动程序将提供的数据字节数,以便包含在转储文件中。 此参数的值必须小于或等于 4000。 微型端口驱动程序可以将此参数设置为零,以指示应取消调用检查 bug。

返回值

如果成功,VideoPortRegisterBugcheckCallback 将返回NO_ERROR。 否则,它将返回指示失败性质的状态代码。

注解

如果你正在开发一个视频微型端口驱动程序,打算在 Windows XP 或早期基于 NT 的操作系统上运行,则可以使用 VideoPortGetProcAddress 回调例程来查找 VideoPortRegisterBugcheckCallback 函数的地址。 有关详细信息,请参阅 使用 VideoPortGetProcAddress

当发生特定类型的 bug 检查时,微型端口驱动程序可以注册回调。 目前,只能挂钩 bug 检查代码0xEA。 当出现 bug 检查时,将调用微型驱动程序提供的回调函数,微型端口驱动程序可以将数据追加到转储文件。 当无法直接调试时,这对于收集统计数据很有用。

BugcheckDataSize 参数的值必须比微型端口驱动程序提供的数据大BUGCHECK_DATA_SIZE_RESERVED字节。 例如,假设微型端口驱动程序提供要写入转储文件的数据DUMP_SIZE字节。 然后, BugcheckDataSize 的值应DUMP_SIZE + BUGCHECK_DATA_SIZE_RESERVED,并且总值必须小于或等于 4000。

video.h) 中定义的常量BUGCHECK_DATA_SIZE_RESERVED (在 Microsoft Windows Server 2003 及更高版本环境中可用。 在 Windows XP SP1 生成环境中,使用 48 而不是 BUGCHECK_DATA_SIZE_RESERVED。

微型端口驱动程序可以通过调用此函数、为 Callback 参数指定 NULL 或为 DataSize 参数指定来取消注册以前注册的回调。

有关详细信息,请参阅 视频端口驱动程序对 Bug 检查回调的支持

要求

要求
最低受支持的客户端 在 Windows XP SP1 及更高版本的 Windows 操作系统中可用。
目标平台 桌面
标头 video.h (包括 Video.h)
Library Videoprt.lib
DLL Videoprt.sys
IRQL PASSIVE_LEVEL

另请参阅

HwVidBugcheckCallback