DXGKDDI_QUERY_DEVICE_DESCRIPTOR 콜백 함수(dispmprt.h)
DxgkDdiQueryDeviceDescriptor 함수는 디스플레이 어댑터의 자식 디바이스 또는 디스플레이 어댑터의 자식 디바이스에 연결된 외부 디바이스(일반적으로 모니터)에 대한 설명자를 반환합니다.
구문
DXGKDDI_QUERY_DEVICE_DESCRIPTOR DxgkddiQueryDeviceDescriptor;
NTSTATUS DxgkddiQueryDeviceDescriptor(
[in] IN_CONST_PVOID MiniportDeviceContext,
[in] IN_ULONG ChildUid,
[in, out] INOUT_PDXGK_DEVICE_DESCRIPTOR DeviceDescriptor
)
{...}
매개 변수
[in] MiniportDeviceContext
디스플레이 어댑터와 연결된 컨텍스트 블록에 대한 핸들입니다. 디스플레이 미니포트 드라이버의 DxgkDdiAddDevice 함수는 이전에 DirectX 그래픽 커널 하위 시스템에 이 핸들을 제공했습니다.
[in] ChildUid
자식 디바이스를 고유하게 식별하는 정수입니다. 디스플레이 미니포트 드라이버의 DxgkDdiQueryChildRelations 함수는 이전에 이 식별자를 디스플레이 포트 드라이버에 제공했습니다.
[in, out] DeviceDescriptor
DXGK_DEVICE_DESCRIPTOR 구조체에 대한 포인터입니다. 호출자는 DescriptorLength 및 DescriptorBuffer 멤버를 초기화합니다. 자식 디바이스에 TypeVideoOutput 유형이 있는 경우 호출자는 DescriptorOffset 멤버도 초기화합니다. 반환 시 DescriptorBuffer 멤버가 가리키는 호출자 할당 버퍼가 설명자를 받습니다.
반환 값
DxgkDdiQueryDeviceDescriptor 는 다음 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
STATUS_SUCCESS | 함수가 디바이스 설명자를 성공적으로 반환했습니다. |
STATUS_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED | ChildUid로 식별된 (온보딩) 자식 디바이스는 설명자를 지원하지 않습니다. |
STATUS_MONITOR_NO_DESCRIPTOR | ChildUid로 식별된 자식 디바이스는 EDID 설명자를 지원하지 않는 모니터에 연결됩니다. |
STATUS_MONITOR_NO_MORE_DESCRIPTOR_DATA | ChildUid로 식별된 자식 디바이스는 EDID 설명자를 지원하는 모니터에 연결되지만 설명자에는 DeviceDescriptor의 DescriptorOffset 및 DescriptorLengthmembers로 지정된 EDID 확장 블록이 없습니다. |
설명
DxgkDdiQueryDeviceDescriptor는 DeviceDescriptor-DescriptorLength>에 지정된 바이트 수보다 더 많이 작성해서는 안됩니다.
ChildUid로 식별된 자식 디바이스에 TypeVideoOutput 형식이 있는 경우 DxgkDdiQueryDeviceDescriptor는 출력에 연결된 모니터에 대한 EDID(확장 디스플레이 식별 데이터)의 일부를 반환합니다. DeviceDescriptor-DescriptorOffset> 은 반환할 데이터 시작의 EDID에 대한 바이트 오프셋을 지정합니다.
ChildUid로 식별된 자식 디바이스가 비디오 출력이 아닌 경우 DxgkDdiQueryDeviceDescriptor는 일반 디바이스 설명자를 반환합니다. 즉, DXGK_GENERIC_DESCRIPTOR 구조체의 멤버를 채웁니다.
DxgkDdiQueryDeviceDescriptor 함수는 한 자식 디바이스에 대해 여러 번 호출할 수 있습니다. 연결된 모니터가 있는 자식 디바이스의 경우 디스플레이 포트 드라이버는 초기화 중에 DxgkDdiQueryDeviceDescriptor 를 호출하여 모니터 EDID의 처음 128바이트 블록을 가져옵니다. 나중에 모니터 클래스 함수 드라이버(Monitor.sys)는 DxgkDdiQueryDeviceDescriptor 를 호출하여 동일한 모니터의 EDID에 대해 선택한 부분(처음 128바이트 블록 포함)을 가져옵니다.
DxgkDdiQueryDeviceDescriptor를 페이징 가능으로 만들어야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다. |
대상 플랫폼 | 데스크톱 |
머리글 | dispmprt.h |
IRQL | PASSIVE_LEVEL |
추가 정보
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기