IDirectDraw7::EvaluateMode 메서드(ddraw.h)
IDirectDraw7::StartModeTest를 호출한 후 테스트가 제공하는 각 모드를 통과하거나 실패하고 테스트가 완료될 때까지 모드를 단계별로 진행하는 데 사용됩니다.
구문
HRESULT EvaluateMode(
[in] DWORD unnamedParam1,
[out] DWORD *unnamedParam2
);
매개 변수
[in] unnamedParam1
테스트 중인 모드의 상태 나타내는 다음 플래그 중 하나입니다.
DDEM_MODEPASSED
테스트 중인 모드가 통과되었습니다.
DDEM_MODEFAILED
테스트 중인 모드가 실패했습니다.
[out] unnamedParam2
현재 모드가 명시적으로 전달되거나 실패하지 않는 한 현재 모드가 자동으로 실패하기 전까지 남은 시간(초)을 나타내는 값을 수신하는 변수에 대한 포인터입니다.
반환 값
메서드가 성공하면 반환 값이 DD_OK.
실패하거나 완료 시 메서드는 다음 오류 값 중 하나를 반환할 수 있습니다.
- DDERR_TESTFINISHED
- DDERR_NEWMODE
- DDERR_INVALIDOBJECT
- DDERR_INVALIDPARAMS
- DDERR_NOTFOUND
설명
EvaluateMode를 IDirectDraw7::StartModeTest 메서드와 함께 사용하여 EDID 모니터 및 디스플레이 어댑터 조합이 각 화면 해상도에 지원할 수 있는 최대 새로 고침 속도를 결정할 수 있습니다.
특히 IDirectDraw7::StartModeTest 를 호출하면 DirectDraw가 테스트 가능한 해상도 집합을 설정하고 집합의 첫 번째 해상도를 기반으로 모드를 표시하도록 지시합니다. EvaluateMode에 대한 후속 호출은 각 모드를 통과하거나 실패하고 테스트를 다음 표시 모드로 진행하는 데 사용할 수 있습니다. 메서드는 지정된 해상도에 대해 지원되는 가장 높은 새로 고침 속도로 시작하여 테스트 가능한 해상도를 단계씩 수행합니다. 지정된 해상도에 대한 새로 고침 속도가 통과되면 해당 해상도에 대한 낮은 새로 고침 속도 테스트를 건너뜁니다.
테스트가 시작되거나 모드가 통과되거나 실패할 때마다 DirectDraw는 15초 제한 시간을 시작합니다. 애플리케이션은 dwFlags 인수에 대해 값이 0인 EvaluateMode 를 호출하여 현재 모드를 전달하거나 실패하지 않고 남은 시간을 모니터링할 수 있습니다. DirectDraw는 EvaluateMode 가 호출된 경우에만 모드를 변경하거나 테스트를 종료합니다. 그러나 시간 제한 기간이 경과한 후 애플리케이션이 EvaluateMode 를 호출하면 dwFlags 매개 변수에 전달된 값에 관계없이 현재 모드가 실패합니다.
요구 사항
대상 플랫폼 | Windows |
헤더 | ddraw.h |
라이브러리 | Ddraw.lib |
DLL | Ddraw.dll |