EnumDisplaySettingsExW 함수(winuser.h)
EnumDisplaySettingsEx 함수는 디스플레이 디바이스의 그래픽 모드 중 하나에 대한 정보를 검색합니다. 디스플레이 디바이스의 모든 그래픽 모드에 대한 정보를 검색하려면 이 함수를 일련의 호출합니다.
이 함수는 dwFlags 매개 변수가 있다는 점에서 EnumDisplaySettings와 다릅니다.
구문
BOOL EnumDisplaySettingsExW(
[in] LPCWSTR lpszDeviceName,
[in] DWORD iModeNum,
[out] DEVMODEW *lpDevMode,
[in] DWORD dwFlags
);
매개 변수
[in] lpszDeviceName
함수가 정보를 가져올 그래픽 모드에 대한 디스플레이 디바이스를 지정하는 null로 끝나는 문자열에 대한 포인터입니다.
이 매개 변수는 NULL 또는 DISPLAY_DEVICE. EnumDisplayDevices에서 반환된 DeviceName입니다. NULL 값은 호출 스레드가 실행 중인 컴퓨터의 현재 디스플레이 디바이스를 지정합니다.
[in] iModeNum
검색할 정보의 유형을 나타냅니다. 이 값은 그래픽 모드 인덱스 또는 다음 값 중 하나일 수 있습니다.
값 | 의미 |
---|---|
|
디스플레이 디바이스에 대한 현재 설정을 검색합니다. |
|
현재 레지스트리에 저장된 디스플레이 디바이스에 대한 설정을 검색합니다. |
그래픽 모드 인덱스는 0부터 시작합니다. 모든 디스플레이 디바이스의 그래픽 모드에 대한 정보를 가져오려면 EnumDisplaySettingsEx에 대한 일련의 호출을 수행합니다. 첫 번째 호출에 대해 iModeNum 을 0으로 설정하고 후속 호출마다 iModeNum 을 하나씩 증분합니다. 반환 값이 0이 될 때까지 함수를 계속 호출합니다.
iModeNum이 0으로 설정된 EnumDisplaySettingsEx를 호출하면 운영 체제가 디스플레이 디바이스에 대한 정보를 초기화하고 캐시합니다. iModeNum이 0이 아닌 값으로 설정된 EnumDisplaySettingsEx를 호출하면 함수는 iModeNum이 0으로 설정된 상태에서 함수가 마지막으로 호출되었을 때 캐시된 정보를 반환합니다.
[out] lpDevMode
함수가 지정된 그래픽 모드에 대한 정보를 저장하는 DEVMODE 구조체에 대한 포인터입니다. EnumDisplaySettingsEx를 호출하기 전에 dmSize 멤버를 sizeof(DEVMODE)로 설정하고 dmDriverExtra 멤버를 설정하여 프라이빗 드라이버 데이터를 수신하는 데 사용할 수 있는 추가 공간의 크기(바이트)를 나타냅니다.
EnumDisplaySettingsEx 함수는 lpDevMode의 dmFields 멤버와 DEVMODE 구조체의 하나 이상의 다른 멤버를 채웁니다. EnumDisplaySettingsEx 호출로 설정된 멤버를 확인하려면 dmFields 비트 마스크를 검사합니다. 이 함수에 의해 일반적으로 채워진 필드 중 일부는 다음과 같습니다.
- dmBitsPerPel
- dmPelsWidth
- dmPelsHeight
- dmDisplayFlags
- dmDisplayFrequency
- dmPosition
- dmDisplayOrientation
[in] dwFlags
이 매개 변수는 다음 값일 수 있습니다.
반환 값
함수가 성공하면 반환 값이 0이 아닙니다.
함수가 실패하면 반환 값은 0입니다.
설명
iModeNum이 디스플레이 디바이스의 마지막 그래픽 모드 인덱스보다 크면 함수가 실패합니다. iModeNum 매개 변수에 대한 설명에서 설명한 대로 이 동작을 사용하여 디스플레이 디바이스의 모든 그래픽 모드를 열거할 수 있습니다.
DPI 가상화
이 API는 DPI 가상화에 참여하지 않습니다. 지정된 출력은 항상 물리적 픽셀의 측면에서 이며 호출 컨텍스트와 관련이 없습니다.참고
winuser.h 헤더는 ENumDisplaySettingsEx를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | winuser.h(Windows.h 포함) |
라이브러리 | User32.lib |
DLL | User32.dll |
API 세트 | ext-ms-win-ntuser-sysparams-ext-l1-1-1(Windows 10 버전 10.0.14393에 도입됨) |