Freigeben über


IDXGIFactory::EnumAdapters-Methode (dxgi.h)

Listet die Adapter (Grafikkarten) auf.

Syntax

HRESULT EnumAdapters(
        UINT         Adapter,
  [out] IDXGIAdapter **ppAdapter
);

Parameter

Adapter

Typ: UINT

Der Index des zu enumerierenden Adapters.

[out] ppAdapter

Typ: IDXGIAdapter**

Die Adresse eines Zeigers auf eine IDXGIAdapter-Schnittstelle an der durch den Adapter-Parameter angegebenen Position. Dieser Parameter darf nicht NULL sein.

Rückgabewert

Typ: HRESULT

Gibt bei erfolgreicher Ausführung S_OK zurück. Gibt andernfalls DXGI_ERROR_NOT_FOUND zurück, wenn der Index größer oder gleich der Anzahl der Adapter im lokalen System ist, oder DXGI_ERROR_INVALID_CALL , wenn der ppAdapter-ParameterNULL ist.

Hinweise

Wenn Sie eine Factory erstellen, listet die Factory den Satz von Adaptern auf, die im System verfügbar sind. Wenn Sie also die Adapter in einem System ändern, müssen Sie das IDXGIFactory-Objekt zerstören und neu erstellen. Die Anzahl der Adapter in einem System ändert sich, wenn Sie eine Anzeige Karte hinzufügen oder entfernen oder einen Laptop andocken oder abdocken.

Wenn die EnumAdapters-Methode erfolgreich ist und den ppAdapter-Parameter mit der Adresse des Zeigers auf die Adapterschnittstelle füllt, erhöht EnumAdapters die Referenzanzahl der Adapterschnittstelle. Wenn Sie die Verwendung der Adapterschnittstelle abgeschlossen haben, rufen Sie die Release-Methode auf, um die Verweisanzahl zu verringern, bevor Sie den Zeiger zerstören.

EnumAdapters gibt zuerst den Adapter mit der Ausgabe zurück, auf der der primäre Desktop angezeigt wird. Dieser Adapter entspricht einem Index von Null. EnumAdapters gibt als Nächstes andere Adapter mit Ausgaben zurück. EnumAdapters gibt schließlich Adapter ohne Ausgaben zurück.

Beispiele

Auflisten von Adaptern

Im folgenden Codebeispiel wird veranschaulicht, wie Adapter mithilfe der EnumAdapters-Methode aufgezählt werden.


UINT i = 0; 
IDXGIAdapter * pAdapter; 
std::vector <IDXGIAdapter*> vAdapters; 
while(pFactory->EnumAdapters(i, &pAdapter) != DXGI_ERROR_NOT_FOUND) 
{ 
	vAdapters.push_back(pAdapter); 
	++i; 
} 

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile dxgi.h
Bibliothek DXGI.lib

Weitere Informationen

DXGI-Schnittstellen

IDXGIFactory