D3DDDI_QUERYREGISTRY_INFO 구조체(d3dukmdt.h)
D3DDDI_QUERYREGISTRY_INFO 구조는 D3DDDICB_QUERYADAPTERINFO2::QueryTypeD3DDDI_QUERYADAPTERTYPE_QUERYREGISTRY때 D3DDDICB_QUERYADAPTERINFO2::p DriverPrivateData 재해석되어야 하는 방법을 나타냅니다.
통사론
typedef struct _D3DDDI_QUERYREGISTRY_INFO {
D3DDDI_QUERYREGISTRY_TYPE QueryType;
D3DDDI_QUERYREGISTRY_FLAGS QueryFlags;
WCHAR ValueName[MAX_PATH];
ULONG ValueType;
ULONG PhysicalAdapterIndex;
ULONG OutputValueSize;
D3DDDI_QUERYREGISTRY_STATUS Status;
union {
DWORD OutputDword;
D3DKMT_ALIGN64 UINT64 OutputQword;
WCHAR OutputString[1];
BYTE OutputBinary[1];
};
} D3DDDI_QUERYREGISTRY_INFO;
회원
QueryType
[in] 검색할 데이터를 나타내는 D3DDDI_QUERYREGISTRY_TYPE 값입니다.
D3DDDI_QUERYREGISTRY_INFO::QueryType 이 구조에서 가장 중요한 필드입니다. 레지스트리 또는 파일 경로가 검색되는지 여부와 특정 레지스트리 하이브 및 파일 경로를 나타냅니다.
레지스트리 키 열거형:
- D3DDDI_QUERYREGISTRY_SERVICEKEY
- D3DDDI_QUERYREGISTRY_ADAPTERKEY
파일 경로 열거형:
- D3DDDI_QUERYREGISTRY_DRIVERSTOREPATH
- D3DDDI_QUERYREGISTRY_DRIVERIMAGEPATH
QueryFlags
[in] 문자열을 검색하는 방법을 제어하는 플래그가 있는 D3DDDI_QUERYREGISTRY_FLAGS 구조체입니다. QueryFlags 게스트 환경에 대한 파일 경로를 포함하는 검색된 문자열을 번역하는 등의 추가 작업을 수행할 수 있습니다.
ValueName[MAX_PATH]
[in] 백슬래시로 실제 값 이름과 구분되는 하위 키 이름을 포함할 수 있는 0으로 끝나는 UNICODE 문자열입니다. 예를 들어 ValueNameSubKey1\ SubKey2\NameOfTheValue
수 있습니다. 이 경우 SubKey1\ SubKey2
서비스 또는 소프트웨어 키의 하위 키입니다.
레지스트리 정보를 검색할 때 ValueName 검색할 레지스트리 값 이름을 지정해야 합니다. 파일 경로 정보를 검색할 때 ValueName 무시됩니다.
ValueType
[in] 레지스트리 정보를 검색할 때 ValueType 레지스트리 값 이름에 해당하는 예상 레지스트리 값 형식을 지정해야 합니다. REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ, REG_BINARY, REG_QWORD 또는 REG_DWORD 합니다.
파일 경로 정보를 검색할 때 ValueType 성공하려면 0이어야 합니다.
자세한 내용은 레지스트리 값 형식 참조하세요.
PhysicalAdapterIndex
[in] LDA 체인의 실제 어댑터 인덱스입니다.
OutputValueSize
[out] pfnQueryAdapterInfoCb2 성공하면(상태 D3DDDI_QUERYREGISTRY_STATUS_SUCCESS) 쓰기 출력의 크기(바이트)입니다. 상태 D3DDDI_QUERYREGISTRY_STATUS_BUFFER_OVERFLOW 경우 outputValueSize 출력 값을 보유하는 데 필요한 바이트 수입니다.
Status
[out] 쿼리의 상태를 나타내는 D3DDDI_QUERYREGISTRY_STATUS 값입니다.
사용자 모드 표시 드라이버가 런타임의 pfnQueryAdapterInfoCb2 함수를 호출하면 DxgkDdiQueryAdapterInfo 함수에 대한 호출이 시작됩니다.
쿼리 상태는 다양한 양의 데이터가 검색되었음을 나타내기 위해 반환 값과 별도로 반환됩니다. 다음 세 가지 반환 상태는 가장 중요한 이해입니다.
- pfnQueryAdapterInfoCb2 STATUS_SUCCESS 반환합니다.
- 상태D3DDDI_QUERYREGISTRY_STATUS_SUCCESS경우 출력Xxx 시작하는 모든 필드가 유효합니다.
- 상태D3DDDI_QUERYREGISTRY_STATUS_BUFFER_OVERFLOW경우 개인 데이터에 레지스트리 값을 저장할 공간이 부족합니다. OutputValueSize 유효합니다.
- pfnQueryAdapterInfoCb2 STATUS_SUCCESS 반환하지 않으면 상태D3DDDI_QUERYREGISTRY_STATUS_FAIL변경될 수 있다는 점을 제외하고 모든 필드는 수정되지 않은 상태로 유지됩니다.
OutputDword
[out] 출력 값을 보유하는 공용 구조체의 일부입니다. OutputDword 레지스트리 DWORD를 읽을 때 성공적으로 검색된 데이터를 재해석하기 위한 편리한 필드입니다.
OutputQword
[out] 출력 값을 보유하는 공용 구조체의 일부입니다. OutputQword 레지스트리 QWORD를 읽을 때 성공적으로 검색된 데이터를 재해석하기 위한 편리한 필드입니다.
OutputString[1]
OutputBinary[1]
발언
D3DDDI_QUERYREGISTRY_INFO 드라이버 설치 중에 일반적으로 캐시되는 정보에 대한 레지스트리를 읽는 데 사용됩니다.
원시 OS 메서드를 사용하는 대신 사용자 모드 드라이버 및 기타 구성 요소는 지원되는 OS 버전에서 이 기술을 유비쿼터스로 사용해야 합니다. 이를 통해 OS는 가상화된 환경과 같은 종속성 변경 및 시나리오와의 사용자 모드 호환성을 최대화할 수 있습니다. 자세한 내용은 GPU 매개 변수화 참조하세요.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 버전 1803(WDDM 2.4) |
헤더 | d3dukmdt.h |