Ich habe mich gefragt, wie ich die Modell-Grafikkarte bekommen/Marke von Code besonders von DirectX 9.0c (aus C++ Code).Holen Sie sich das Grafikkartenmodell?
Antwort
Zur Laufzeit können Sie das Gerätemodell und Anbieter abfragen:
In OpenGL verwenden Sie den Befehl glGetString (GL_VENDOR) oder GL_RENDERER oder GL_VERSION Informationen, die Sie nach sind zu bekommen.
In DirectX 9, es erscheint die Info in dem Microsoft-Konfigurationssystem ist, und wird aus der Gerätedatenbank abgefragt. Es ist Abschnitt 3 dieses Dokuments, das auch Beispielcode hat: http://msdn.microsoft.com/en-us/library/bb204848(VS.85).aspx Mit dem gleichen System können Sie diese Informationen als die Menge an RAM bekommen die Grafikkarte hat, den Fahrer Nummer usw.
Werfen Sie einen Blick bei Chapter 2. Direct3D aus meinem Buch The Direct3D Graphics Pipeline. Siehe Abschnitt 2.12, Identifizieren eines bestimmten Geräts.
Sie können "DirecX Diagnostic Tool" API verwenden, wie in Beispiel DxDiagOutput von DX SDK http://msdn.microsoft.com/en-us/library/ee416986%28v=VS.85%29.aspx
Der einfachste Weg, in DirectX ist durch IDirect3D9::GetAdapterIdentifier.
Erstellen Sie einfach ein D3DADAPTER_IDENTIFIER9 Objekt, einen Zeiger auf sie zu GetAdapterIdentifier passieren. DirectX füllt die Beschreibung der Grafikkarte als Zeichenfolge im Feld Beschreibung aus. Es enthält auch Informationen darüber, auf welchem Anzeigegerät sich die Karte befindet und welche Treiberversion Sie haben.
Sie erhalten etwas wie folgt aus:
- Beschreibung: "NVIDIA GeForce GTX 570"
- Device: "\ \ DISPLAY1."
- Driver: "nvd3dum.dll"
Dank bekam die Informationen, die ich brauchte und war sehr nützlich, nicht sicher, warum dies nicht die akzeptierte Antwort. –
... weil es drei Jahre später ist. :) – Decker