다음을 통해 공유


SetupQueryInfVersionInformationA 함수(setupapi.h)

[이 함수는 요구 사항 섹션에 표시된 운영 체제에서 사용할 수 있습니다. 이후 버전에서는 변경되거나 제공되지 않을 수 있습니다. SetupAPI는 더 이상 애플리케이션 설치에 사용되지 않아야 합니다. 대신 Windows Installer를 사용하여 애플리케이션 설치 관리자를 개발합니다. SetupAPI는 디바이스 드라이버를 설치하는 데 계속 사용됩니다.]

SetupQueryInfVersionInformation 함수는 SP_INF_INFORMATION 구조체에서 버퍼로 INF 파일 버전 정보를 반환합니다.

구문

WINSETUPAPI BOOL SetupQueryInfVersionInformationA(
  [in]      PSP_INF_INFORMATION InfInformation,
  [in]      UINT                InfIndex,
  [in]      PCSTR               Key,
  [in, out] PSTR                ReturnBuffer,
  [in]      DWORD               ReturnBufferSize,
  [in, out] PDWORD              RequiredSize
);

매개 변수

[in] InfInformation

SetupGetInfInformation 함수 호출에서 이전에 반환된 SP_INF_INFORMATION 구조체에 대한 포인터입니다.

[in] InfIndex

버전 정보를 검색할 구성 INF 파일의 인덱스입니다. 이 인덱스 범위는 [0, InfInformation.InfCount)일 수 있습니다. 즉, InfInformation.InfCount 는 0부터 시작하지만 포함하지 않는 값은 유효합니다.

[in] Key

연결된 문자열을 검색할 키 이름을 포함하는 null로 끝나는 문자열에 대한 선택적 포인터입니다. 이 매개 변수가 NULL이면 모든 리소스 키가 제공된 버퍼에 복사됩니다. 각 문자열은 null로 종료되며 목록 끝에 추가 null 이 있습니다.

[in, out] ReturnBuffer

NULL이 아닌 경우 ReturnBuffer는 이 함수가 INF 파일 스타일을 반환하는 호출 제공 문자 버퍼를 가리킵니다. null로 끝나는 문자열을 사용해야 합니다. null로 끝나는 문자열은 대상 버퍼의 크기를 초과하면 안 됩니다. 함수를 한 번 호출하여 필요한 버퍼 크기를 얻고, 필요한 메모리를 할당한 다음, 함수를 두 번째로 호출하여 데이터를 검색할 수 있습니다. 이 기술을 사용하면 버퍼 크기가 부족하여 오류를 방지할 수 있습니다. 주의 섹션을 참조하십시오. 이 매개 변수는 NULL일 수 있습니다.

[in] ReturnBufferSize

ReturnBuffer 매개 변수가 가리키는 버퍼의 크기(문자)입니다. 이 숫자에는 null 종결자가 포함됩니다.

[in, out] RequiredSize

NULL이 아닌 경우 ReturnBuffer 매개 변수가 가리키는 버퍼에 필요한 크기를 문자 단위로 받는 변수에 대한 포인터입니다. 이 숫자에는 null 종결자가 포함됩니다. ReturnBuffer가 지정되고 실제 크기가 ReturnBufferSize에서 지정한 값보다 크면 함수가 실패하고 GetLastError를 호출하면 ERROR_INSUFFICIENT_BUFFER 반환됩니다.

반환 값

함수가 성공하면 반환 값은 0이 아닌 값입니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

이 함수가 NULLReturnBufferReturnBufferSize 0으로 호출되면 함수는 지정된 데이터를 RequiredSize가 가리키는 변수에 보유하는 데 필요한 버퍼 크기를 배치합니다. 함수가 성공하면 반환 값은 0이 아닌 값입니다. 그렇지 않으면 반환 값이 0이고 GetLastError를 호출하여 확장된 오류 정보를 가져올 수 있습니다.

레거시 INF 파일 에서 SetupQueryInfVersionInformation 이 호출되면 다음과 같은 방식으로 레거시 INF 파일에서 버전 정보가 생성됩니다.

  1. 레거시 파일의 식별 섹션에 있는 OptionType 키는 클래스 키 값으로 반환됩니다.
  2. 레거시 INF 파일의 서명 섹션에 있는 FileType 키는 서명 키 값이 됩니다.
  3. 레거시 INF 파일의 FileType 키 값이 MICROSOFT_FILE 경우 공급자 키 값은 "Microsoft"로 설정됩니다.
다음 표에는 정보가 SP_INF_INFORMATION 구조로 전달되기 전에 정보가 변환되는 방법이 요약되어 있습니다.
레거시 파일 정보 Windows INF 정보
[Identification]
OptionType = Mouse
[Version]
Class=Mouse
[Signature]
FileType = MICROSOFT_FILE
Signature=MICROSOFT_FILE
FileType이 MICROSOFT_FILE 경우)
Provider="Microsoft"
 

참고

setupapi.h 헤더는 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 SetupQueryInfVersionInformation을 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

   
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 setupapi.h
라이브러리 Setupapi.lib
DLL Setupapi.dll

참조

함수

개요

SetupGetInfInformation

SetupQueryInfFileInformation