3

Windows で 3D ゲームのランチャー アプリケーションを開発しています。構成 "ini" ファイルでは、dxdiag.exe によって返されるデバイス識別子 GUID のように、目的のデバイスのハードウェア GUID を指定する必要があります。

システムで使用可能なアダプターを一覧表示しようとしています。ユーザーがアダプターを選択して、そのデバイスのハードウェア GUID を ini ファイルにロードできるようにします。

これを試みるための多くの方法を調べました。クラス GUID を返しますが、特定のドライバー GUID を返さない System.Management クラスを使用してみました。SetupAPI.h 関数へのネイティブ呼び出しを使用してみましたが、これも特定のデバイス識別子 GUID を一覧表示できないようです。GUIDが存在するかどうかを確認するために、レジストリを調べてみました。運がない。

私の最良のアイデアは、おそらくマネージ DirectX ライブラリを使用して、探している GUID を返すことでした。これはおそらく dxdiag の方法です。.NET アプリケーション用の SharpDX Managed DirectX インターフェイスを使用して、各ドライバーに関するハードウェア情報を列挙および収集できました (フレームワーク 3.5 をターゲットにしています) が、dxdiag が返すのと同じ GUID を返すことができませんでした。

私は本当に解決策に行き詰まっています。ヘルプ?

4

1 に答える 1

3

なんとか自分で解決しました。

これを解決する最善の方法は、DirectX を使用することであると判断しました。DX ライブラリをインポートし、アプリを x86 に変更しました。私が探していたコードは次のとおりです。

Manager.Adapters[0].Information.DeviceIdentifier
于 2011-07-25T14:53:36.630 に答える