Samstag, Juni 6, 2020

Holen Sie sich die Grafikkarten-Modell?

Ich Frage mich, wie kann ich die Grafik-Karte Modell/Marke von code, vor allem von DirectX 9.0 c (von in C++ – code).

InformationsquelleAutor tweetypi | 2009-07-07

5 Kommentare

  1. 7

    Zur Laufzeit abgefragt werden können der Gerätetyp und Hersteller:

    • In OpenGL, verwenden Sie den Befehl glGetString(GL_VENDOR) oder GL_RENDERER oder GL_VERSION die Informationen, die Sie suchen.

    • In DirectX 9, es erscheint die info ist in der Microsoft-config-system, und abgefragt wird, aus der Geräte-Datenbank. Es ist im Abschnitt 3 dieses Dokuments, die auch Beispiel-code: http://msdn.microsoft.com/en-us/library/bb204848(VS.85).aspx
      Mit dem gleichen system können Sie Informationen wie die Menge an ram, die Grafikkarte, die Treiber, etc.

  2. 10

    Der einfachste Weg in DirectX ist durch IDirect3D9::GetAdapterIdentifier.

    Erstellen Sie einfach eine D3DADAPTER_IDENTIFIER9 Objekt, übergeben Sie den Zeiger, um es zu GetAdapterIdentifier. DirectX füllt die Grafikkarte Beschreibung, wie Sie eine Zeichenfolge in das Feld „Beschreibung“. Es enthält auch Informationen darüber, welche display-Gerät die Karte, und welche Treiber version du hast.

    Erhalten Sie so etwas wie dieses:

    • Beschreibung: „NVIDIA GeForce GTX 570“
    • Gerät: „\.\DISPLAY1“
    • Treiber:
      „nvd3dum.dll“
    • Dank bekam die Informationen die ich brauchte, und war sehr nützlich, nicht sicher, warum dies ist nicht die akzeptierte Antwort.
    • … weil es drei Jahre später. 🙂
  3. 0
    IDirect3D9* d3dobject = Direct3DCreate9(D3D_SDK_VERSION);
    D3DPRESENT_PARAMETERS d3dpresent;
    memset(&d3dpresent, 0, sizeof(D3DPRESENT_PARAMETERS));
    d3dpresent.Windowed = TRUE;
    d3dpresent.SwapEffect = D3DSWAPEFFECT_DISCARD;
    UINT adaptercount = d3dobject->GetAdapterCount();
    D3DADAPTER_IDENTIFIER9* adapters = (D3DADAPTER_IDENTIFIER9*)malloc(sizeof(D3DADAPTER_IDENTIFIER9) * adaptercount);
    
    for (int i = 0; i < adaptercount; i++)
    {
          d3dobject->GetAdapterIdentifier(i, 0, &(adapters[i]));
    }

    Dann bekommen Sie die Beschreibung der Adapter (Adapter->Beschreibung)

    • Sie brauchen nicht D3DPRESENT_PARAMETERS hier. Es ist verwendet für Gerät der Schöpfung in D3D9. Adapter info verfügbar ist, ohne dass es.

Kostenlose Online-Tests