Microsoft DirectX 8.0 (C++)

D3DADAPTER_IDENTIFIER8

アダプタについての情報を保持する。

typedef struct _D3DADAPTER_IDENTIFIER8 {
    char            Driver[MAX_DEVICE_IDENTIFIER_STRING];
    char            Description[MAX_DEVICE_IDENTIFIER_STRING];

#ifdef _WIN32
    LARGE_INTEGER   DriverVersion;            /* 32 ビット コンポーネント用に定義される */
#else
    DWORD           DriverVersionLowPart;     /* 16 ビット コンポーネント用に定義される */
    DWORD           DriverVersionHighPart;
#endif

    DWORD           VendorId;
    DWORD           DeviceId;
    DWORD           SubSysId;
    DWORD           Revision;

    GUID            DeviceIdentifier;

    DWORD           WHQLLevel;
} D3DADAPTER_IDENTIFIER8;

メンバ

Driver および Description
ユーザーに提示するために使用される。ベンダーが異なる同じデバイスおよびドライバに対して多くの異なる文字列が関連付けられている可能性があるため、特定のドライバを識別するためにこれらの値を使用するべきではない。
DriverVersion、DriverVersionLowPart、および DriverVersionHighPart
Microsoft® Direct3D® ドライバのバージョンを識別する。64 ビットの符号付き整数値として大小比較を行っても問題はない。ただし、この要素を使用して疑わしいドライバを識別する場合は、注意して行うこと。この値ではなく、DeviceIdentifier を使うことが望ましい。

次の疑似コードの例は、このメンバに符号化されるバージョンのフォーマットを示したものである。

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

HIWORD マクロ、LOWORD マクロ、および LARGE_INTEGER 構造体の詳細については、Microsoft Platform Software Development Kit (SDK) を参照すること。

VendorId
特定のチップ セットの識別に使用できる。メーカーを識別するには、このメンバを調べる。不明な場合、この値は 0 になる場合がある。
DeviceId
特定のチップ セットの識別に使用できる。チップ セットの種類を識別するには、このメンバを調べる。不明な場合、この値は 0 になる場合がある。
SubSysId
特定のチップ セットの識別に使用できる。サブシステムを識別するには、このメンバを調べる。一般に、サブシステムとは特定のボードを指す。不明な場合、この値は 0 になる場合がある。
Revision
特定のチップ セットの識別に使用できる。チップ セットのリビジョン レベルを識別するには、このメンバを調べる。不明な場合、この値は 0 になる場合がある。
DeviceIdentifier
このメンバを調べると、ドライバおよびチップ セットの変更を確認できる。GUID は、ドライバとチップ セットのペアに対する一意な識別子である。ドライバおよびチップセットへの変更を追跡し、グラフィックス サブシステムの新しいプロファイルを作成する場合は、このメンバを参照する。このメンバは、特定の疑わしいドライバを識別するためにも使用できる。
WHQLLevel
このデバイスとドライバのペアの Windows Hardware Quality Lab (WHQL) 認証レベルを特定するために使用する。DWORD にはパック形式のデータ構造が格納されており、ドライバが合格した最新の WHQL テストのリリース日が定義されている。この値に対して大小比較演算を実行しても問題はない。次は日付のフォーマットである。
Bits
31-16:    The year, a decimal number from 1999 upwards.
15-8:     The month, a decimal number from 1 to 12.
7-0:      The day, a decimal number from 1 to 31.

次の値も使用される。

0
認証されていない。
1
WHQL の認証は受けているが、利用できる日付情報はない。

注意

定数 MAX_DEVICE_IDENTIFIER_STRING は、次のように定義されている。

#define MAX_DEVICE_IDENTIFIER_STRING        512

VendorIdDeviceIdSubSysId、および Revision の各メンバを組み合わせて使うことで、特定のチップ セットを識別できる。ただし、これらのメンバを使うときは注意が必要である。

動作環境

  ヘッダー : D3d8types.h で宣言。