DXGKCB_QUERY_SERVICES回调函数 (dispmprt.h)

DxgkCbQueryServices 函数返回由显示端口驱动程序实现的接口。

语法

DXGKCB_QUERY_SERVICES DxgkcbQueryServices;

NTSTATUS DxgkcbQueryServices(
  [in]      HANDLE DeviceHandle,
  [in]      DXGK_SERVICES ServicesType,
  [in, out] PINTERFACE Interface
)
{...}

参数

[in] DeviceHandle

表示显示适配器的句柄。 显示微型端口驱动程序以前在传递给 DxgkDdiStartDeviceDXGKRNL_INTERFACE 结构的 DeviceHandle 成员中获取此句柄。

[in] ServicesType

DXGK_SERVICES 枚举中的常量,指定要请求的接口。

[in, out] Interface

指向接收所请求接口的 INTERFACE 结构的指针。

返回值

DxgkCbQueryServices 如果成功,则返回STATUS_SUCCESS。 否则,它将返回 Ntstatus.h中定义的错误代码之一。

言论

在此上下文中,接口是由显示端口驱动程序实现的一组函数。 显示端口驱动程序通过提供函数指针来响应 dxgkCbQueryServices ,使接口的函数可供其他驱动程序使用。

获取 AGP 接口

若要获取加速图形端口(AGP)接口,请执行以下作:

  1. 分配 DXGK_AGP_INTERFACE 结构。

  2. 大小 成员设置为 sizeof(DXGK_AGP_INTERFACE)。

  3. 设置 版本 成员。 版本常量在 dispmprt.h (例如,DXGK_AGP_INTERFACE_VERSION_1)中定义。

  4. 调用 DxgkCbQueryServices;将 ServicesType 设置为 DxgkServicesAgp,并将 接口 设置为 DXGK_AGP_INTERFACE 结构的地址(强制转换为 PINTERFACE)。

  5. DxgkCbQueryServices返回时,DXGK_AGP_INTERFACE 结构将包含指向 AGP 接口函数的指针;例如,AgpAllocatePool

获取调试报表接口

若要获取调试报表接口,请执行以下作:

  1. 分配 DXGK_DEBUG_REPORT_INTERFACE 结构。

  2. 大小 成员设置为 sizeof(DXGK_DEBUG_REPORT_INTERFACE)。

  3. 设置 版本 成员。 版本常量在 Dispmprt.h(例如,DXGK_DEBUG_REPORT_INTERFACE_VERSION_1)中定义。

  4. 调用 DxgkCbQueryServices;将 ServicesType 设置为 DxgkServicesDebugReport,并将 接口 设置为 DXGK_DEBUG_REPORT_INTERFACE 结构的地址(强制转换为 PINTERFACE)。

  5. DxgkCbQueryServices返回时,DXGK_DEBUG_REPORT_INTERFACE结构将包含指向调试报表接口函数的指针;例如,DbgReportCreate

获取计时作接口

若要获取计时作接口,请执行以下作:

  1. 分配 DXGK_TIMED_OPERATION_INTERFACE 结构。

  2. 大小 成员设置为 sizeof(DXGK_TIMED_OPERATION_INTERFACE)。

  3. 设置 版本 成员。 版本常量是在 dispmprt.h 中定义的(例如,DXGK_TIMED_OPERATION_INTERFACE_VERSION_1)。

  4. 调用 DxgkCbQueryServices;将 ServicesType 设置为 DxgkServicesTimedOperation,并将 接口 设置为 DXGK_TIMED_OPERATION_INTERFACE 结构的地址(强制转换为 PINTERFACE)。

  5. DxgkCbQueryServices返回时,DXGK_TIMED_OPERATION_INTERFACE 结构将包含指向计时作接口函数的指针;例如,TimedOperationStart

获取 SPB 和系统固件表接口

简单外围总线(SPB)系统固件表 接口可以通过使用适当的 ServicesType 和结构,以类似方式获取上述步骤。

要求

要求 价值
最低支持的客户端 Windows Vista
目标平台 桌面
标头 dispmprt.h (包括 Dispmprt.h)
IRQL PASSIVE_LEVEL

另请参阅

DXGK_AGP_INTERFACE

DxgkDdiStartDevice

DXGK_DEBUG_REPORT_INTERFACE

DXGK_FIRMWARE_TABLE_INTERFACE

DXGK_SERVICES

DXGK_SPB_INTERFACE

DXGK_TIMED_OPERATION_INTERFACE

DXGKRNL_INTERFACE

接口