다음을 통해 공유


D3DDDI_QUERYREGISTRY_INFO 구조체(d3dukmdt.h)

D3DDDI_QUERYREGISTRY_INFO 구조는 D3DDDICB_QUERYADAPTERINFO2::QueryTypeD3DDDI_QUERYADAPTERTYPE_QUERYREGISTRYD3DDDICB_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

참고 항목

D3DDDI_QUERYREGISTRY_TYPE

D3DDDI_QUERYREGISTRY_FLAGS

D3DDDI_QUERYREGISTRY_STATUS

KMTQUERYADAPTERINFOTYPE

D3DKMT_QUERYADAPTERINFO

pfnQueryAdapterInfoCb2