2017-10-07 3 views
0

Im Entwickeln einer Anwendung, die die auf meinem System installierten DirectX-Versionen erkennen würde. Wenn beispielsweise DirectX 9 und DirectX 11 auf meinem System installiert sind, muss mein Programm diese Installationen erkennen und die installierten Versionen anzeigen. Aber ich habe keine Ahnung, wie dies zu erreichenSo erkennen Sie installierte Versionen von DirectX

EDIT: Ich möchte nicht verwenden UI dxdiag die Versionen zu erkennen, möchte ich mein Programm die Versionen zu erkennen. Und alle installierten Versionen müssen nicht nur das eines erkannt werden, die durch das Betriebssystem unterstützt mit dem Betriebssystem oder dem höchsten Niveau vorinstalliert ist

+0

Duplikat von https://stackoverflow.com/questions/22223859/find-out-directx-version – Dale

+1

Ein solches Programm existiert bereits auf jedem Windows-Rechner. Führen Sie dxdiag.exe aus, um nachzusehen. Sie können es mit der Option/x ausführen, um stattdessen eine XML-Datei zu generieren. –

+0

Microsoft bietet keine API dafür. Sie sollten sich auf den von @ Dale_dale12 erwähnten Beitrag beziehen. – Asesh

Antwort

2

Sie werden höchstwahrscheinlich nicht in der Lage sein, zur Liste alle installiert DirectX-Versionen. Ich stieß auf this interesting article in den Support-Seiten der Gaming-Plattform namens Steam:

Der Versuch, für die richtigen Versionen manuell zu überprüfen, ist extrem kompliziert, weil es zahlreiche Dateien, die alle aktuellen und individuellen Systemkonfigurationsoptionen wie DLL-Such sein müssen Wege erschweren die Situation. Darüber hinaus können sich die Abhängigkeiten und erforderlichen Prüfungen in jeder neuen Version der D3DX-Laufzeit ändern.

Als mentioned by Hans Passant können Sie die höchste installierte Version erhalten, indem dxdiag /x <output file> läuft eine XML-Datei, die verschiedene Einträge von Computerinformationen zu generieren, dann analysieren oder die Datei in Ihrer Anwendung deserialisieren.

Verwandte Themen