D3DADAPTER_IDENTIFIER9 结构

包含标识适配器的信息。

语法

typedef struct D3DADAPTER_IDENTIFIER9 {
  char          Driver[MAX_DEVICE_IDENTIFIER_STRING];
  char          Description[MAX_DEVICE_IDENTIFIER_STRING];
  char          DeviceName[32];
#ifdef _WIN32
  LARGE_INTEGER DriverVersion;
#else
  DWORD         DriverVersionLowPart;
  DWORD         DriverVersionHighPart;
#endif
  DWORD         VendorId;
  DWORD         DeviceId;
  DWORD         SubSysId;
  DWORD         Revision;
  GUID          DeviceIdentifier;
  DWORD         WHQLLevel;
} D3DADAPTER_IDENTIFIER9, *LPD3DADAPTER_IDENTIFIER9;

成员

驱动程序

类型: char

用于向用户演示。 这不应用于标识特定驱动程序,因为许多不同的字符串可能与来自不同供应商的同一设备和驱动程序相关联。

说明

类型: char

用于向用户演示。

DeviceName

类型: char

GDI 的设备名称。

DriverVersion

类型: LARGE_INTEGER

标识 Direct3D 驱动程序的版本。 对 64 位有符号整数值执行小于和大于比较是合法的。 但是,如果使用此元素来识别有问题的驱动程序,请谨慎操作。 应改用 DeviceIdentifier。 请参阅“备注”。

DriverVersionLowPart

类型: DWORD

标识 Direct3D 驱动程序的版本。 对 64 位有符号整数值执行 < 和 > 比较是合法的。 但是,如果使用此元素来识别有问题的驱动程序,请谨慎操作。 应改用 DeviceIdentifier。 请参阅“备注”。

DriverVersionHighPart

类型: DWORD

标识 Direct3D 驱动程序的版本。 对 64 位有符号整数值执行 < 和 > 比较是合法的。 但是,如果使用此元素来识别有问题的驱动程序,请谨慎操作。 应改用 DeviceIdentifier。 请参阅“备注”。

VendorId

类型: DWORD

可用于帮助识别特定芯片集。 查询此成员以标识制造商。 如果未知,该值可以为零。

DeviceId

类型: DWORD

可用于帮助识别特定芯片集。 查询此成员以标识芯片集的类型。 如果未知,该值可以为零。

SubSysId

类型: DWORD

可用于帮助识别特定芯片集。 查询此成员以标识子系统,通常是特定板。 如果未知,该值可以为零。

修订

类型: DWORD

可用于帮助识别特定芯片集。 查询此成员以识别芯片集的修订级别。 如果未知,该值可以为零。

DeviceIdentifier

类型: GUID

可以查询以检查驱动程序和芯片集中的更改。 此 GUID 是驱动程序和芯片集对的唯一标识符。 查询此成员以跟踪对驱动程序和芯片集的更改,以便为图形子系统生成新的配置文件。 DeviceIdentifier 还可用于识别特定有问题的驱动程序。

WHQLLevel

类型: DWORD

用于确定 Windows 硬件质量实验室 (WHQL) 此驱动程序和设备对的验证级别。 DWORD 是一个打包的日期结构,用于定义驱动程序通过的最新 WHQL 测试的发布日期。 对此值执行 < 和 > 操作是合法的。 下面演示了日期格式。

Bits 说明
31-16 年份,1999 年向上的十进制数。
15-8 月份,从 1 到 12 的十进制数。
7-0 日期,从 1 到 31 的十进制数。

 

还使用以下值。

说明
0 未认证。
1 已验证 WHQL,但没有可用的日期信息。

 

Direct3D 9 和 Direct3D 9Ex 之间的差异:

对于在 Windows Vista、Windows Server 2008、Windows 7 和 Windows Server 2008 R2 (或更高版本的当前操作系统) 上运行的 Direct3D9Ex,IDirect3D9::GetAdapterIdentifier 为 WHQL 级别返回 1,而无需检查驱动程序的状态。

备注

以下伪代码示例演示了在 DriverVersion、DriverVersionLowPart 和 DriverVersionHighPart 成员中编码的版本格式。

Product = HIWORD(DriverVersion.HighPart)
Version = LOWORD(DriverVersion.HighPart)
SubVersion = HIWORD(DriverVersion.LowPart)
Build = LOWORD(DriverVersion.LowPart)

有关 HIWORD 宏、LOWORD 宏和LARGE_INTEGER结构的详细信息,请参阅平台 SDK。

MAX_DEVICE_IDENTIFIER_STRING 是具有以下定义的常量。

#define MAX_DEVICE_IDENTIFIER_STRING        512

可以结合使用 VendorId、DeviceId、SubSysId 和 Revision 成员来标识特定的芯片集。 但是,请谨慎使用这些成员。

要求

要求
标头
D3D9Types.h

另请参阅

Direct3D 结构