Share via


IDXGIFactory1::EnumAdapters1 메서드(dxgi.h)

출력 여부에 관계없이 두 어댑터(비디오 카드)를 열거합니다.

구문

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

매개 변수

Adapter

형식: UINT

열거할 어댑터의 인덱스입니다.

[out] ppAdapter

형식: IDXGIAdapter1**

어댑터 매개 변수로 지정된 위치에 있는 IDXGIAdapter1 인터페이스에 대한 포인터의 주소입니다.
이 매개 변수는 NULL이 아니어야 합니다.

반환 값

형식: HRESULT

성공하면 S_OK 반환합니다. 그렇지 않으면 인덱스가 로컬 시스템의 어댑터 수보다 크거나 같으면 DXGI_ERROR_NOT_FOUND 반환하고, ppAdapter 매개 변수가 NULL이면 DXGI_ERROR_INVALID_CALL.

설명

이 메서드는 Windows Vista 및 Windows Server 2008에서 제공된 DXGI 1.0에서 지원되지 않습니다. DXGI 1.1 지원은 Windows 7, Windows Server 2008 R2 및 SP2(서비스 팩 2)(KB 971644) 및 Windows Server 2008(KB 971512)을 사용하여 Windows Vista에 대한 업데이트로 사용할 수 있어야 합니다.

팩터리를 만들 때 팩터리는 시스템에서 사용할 수 있는 어댑터 집합을 열거합니다. 따라서 시스템에서 어댑터를 변경하는 경우 IDXGIFactory1 개체를 삭제하고 다시 만들어야 합니다. 디스플레이 카드 추가 또는 제거하거나 노트북을 도킹하거나 도킹 해제할 때 시스템의 어댑터 수가 변경됩니다.

EnumAdapters1 메서드가 성공하고 ppAdapter 매개 변수를 어댑터 인터페이스에 대한 포인터의 주소로 채우면 EnumAdapters1은 어댑터 인터페이스의 참조 수를 증분합니다. 어댑터 인터페이스 사용을 마치면 포인터를 삭제하기 전에 Release 메서드를 호출하여 참조 수를 감소합니다.

EnumAdapters1 은 먼저 데스크톱 기본이 표시되는 출력이 있는 어댑터를 반환합니다. 이 어댑터는 인덱스 0에 해당합니다. 다음으로 EnumAdapters1 은 출력이 있는 다른 어댑터를 반환합니다. EnumAdapters1 은 출력 없이 어댑터를 반환합니다.

예제

어댑터 열거

다음 코드 예제에서는 EnumAdapters1 메서드를 사용하여 어댑터를 열거하는 방법을 보여 줍니다.


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

요구 사항

   
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 dxgi.h
라이브러리 DXGI.lib

추가 정보

DXGI 인터페이스

IDXGIFactory1