Metodo IDXGIFactory1::EnumAdapters1 (dxgi.h)

Enumera entrambe le schede (schede video) con o senza output.

Sintassi

HRESULT EnumAdapters1(
        UINT          Adapter,
  [out] IDXGIAdapter1 **ppAdapter
);

Parametri

Adapter

Tipo: UINT

Indice dell'adapter da enumerare.

[out] ppAdapter

Tipo: IDXGIAdapter1**

Indirizzo di un puntatore a un'interfaccia IDXGIAdapter1 nella posizione specificata dal parametro Adapter .
Questo parametro non deve essere NULL.

Valore restituito

Tipo: HRESULT

Restituisce S_OK se ha esito positivo; in caso contrario, restituisce DXGI_ERROR_NOT_FOUND se l'indice è maggiore o uguale al numero di adattatori nel sistema locale o DXGI_ERROR_INVALID_CALL se il parametro ppAdapter è NULL.

Commenti

Questo metodo non è supportato da DXGI 1.0, fornito in Windows Vista e Windows Server 2008. Il supporto di DXGI 1.1 è necessario, disponibile in Windows 7, Windows Server 2008 R2 e come aggiornamento a Windows Vista con Service Pack 2 (SP2) (KB 971644) e Windows Server 2008 (KB 971512).

Quando si crea una factory, la factory enumera il set di schede disponibili nel sistema. Pertanto, se si modificano gli adattatori in un sistema, è necessario eliminare e ricreare l'oggetto IDXGIFactory1 . Il numero di adattatori in un sistema cambia quando si aggiunge o si rimuove una scheda di visualizzazione o si scarica o si scollega un portatile.

Quando il metodo EnumAdapters1 ha esito positivo e riempie il parametro ppAdapter con l'indirizzo del puntatore all'interfaccia dell'adattatore, EnumAdapters1 incrementa il conteggio dei riferimenti dell'interfaccia dell'adapter. Al termine dell'uso dell'interfaccia dell'adattatore, chiamare il metodo Release per decrerere il conteggio dei riferimenti prima di eliminare il puntatore.

EnumAdapters1 restituisce prima l'adattatore con l'output in cui viene visualizzata la primaria desktop. Questa scheda corrisponde a un indice pari a zero. EnumAdapters1 successiva restituisce altre schede con output. EnumAdapters1 restituisce infine adattatori senza output.

Esempio

Enumerazione di adapter

Nell'esempio di codice seguente viene illustrato come enumerare gli adapter usando il metodo EnumAdapters1 .


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

Requisiti

   
Client minimo supportato Windows 7 [app desktop | App UWP]
Server minimo supportato Windows Server 2008 R2 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione dxgi.h
Libreria DXGI.lib

Vedi anche

Interfacce DXGI

IDXGIFactory1