SetupGetStringFieldA 함수(setupapi.h)
[이 함수는 요구 사항 섹션에 표시된 운영 체제에서 사용할 수 있습니다. 이후 버전에서는 변경되거나 제공되지 않을 수 있습니다. SetupAPI는 더 이상 애플리케이션 설치에 사용되지 않아야 합니다. 대신 Windows Installer를 사용하여 애플리케이션 설치 관리자를 개발합니다. SetupAPI는 디바이스 드라이버를 설치하는 데 계속 사용됩니다.]
SetupGetStringField 함수는 INF 파일에 있는 줄의 지정된 필드에서 문자열을 검색합니다.
구문
WINSETUPAPI BOOL SetupGetStringFieldA(
[in] PINFCONTEXT Context,
[in] DWORD FieldIndex,
[in, out] PSTR ReturnBuffer,
[in] DWORD ReturnBufferSize,
[out] PDWORD RequiredSize
);
매개 변수
[in] Context
INF 파일의 줄에 대한 컨텍스트에 대한 포인터입니다.
[in] FieldIndex
문자열을 검색해야 하는 지정된 줄 내의 필드의 1부터 시작하는 인덱스입니다. 0의 FieldIndex 를 사용하여 문자열 키(있는 경우)를 검색합니다.
[in, out] ReturnBuffer
null로 끝나는 문자열을 수신하는 버퍼에 대한 선택적 포인터입니다. 대상 버퍼의 크기가 원본 버퍼보다 크거나 같은지 확인해야 합니다. 이 매개 변수는 NULL일 수 있습니다. 주의 섹션을 참조하십시오.
[in] ReturnBufferSize
ReturnBuffer가 가리키는 버퍼의 크기(문자)입니다. 여기에는 null 종결자가 포함됩니다.
[out] RequiredSize
ReturnBuffer 매개 변수가 가리키는 버퍼에 필요한 크기를 문자 단위로 받는 변수에 대한 선택적 포인터입니다. ReturnBuffer를 지정하고 필요한 실제 크기가 ReturnBufferSize에 지정된 값보다 크면 함수가 실패하고 버퍼에 문자열을 저장하지 않습니다. 이 경우 GetLastError 호출은 ERROR_INSUFFICIENT_BUFFER 반환합니다. 이 함수의 유니코드 버전의 경우 필요한 크기는 문자 단위입니다. 여기에는 null 종결자가 포함됩니다.
반환 값
함수가 성공하면 반환 값은 0이 아닌 값입니다.
함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
이 함수가 NULL의 ReturnBuffer 및 ReturnBufferSize 0으로 호출되는 경우 함수는 지정된 데이터를 RequiredSize가 가리키는 변수에 보관하는 데 필요한 버퍼 크기를 배치합니다. 함수가 성공하면 반환 값은 0이 아닌 값입니다. 그렇지 않으면 반환 값이 0이고 GetLastError를 호출하여 확장된 오류 정보를 가져올 수 있습니다.
함수를 한 번 호출하여 필요한 버퍼 크기를 얻고, 필요한 메모리를 할당한 다음, 함수를 두 번째로 호출하여 데이터를 검색할 수 있습니다. 이 기술을 사용하면 버퍼 크기가 부족하여 오류를 방지할 수 있습니다.
INF 문자열 섹션에 지정된 단일 문자열의 최대 길이는 종료 NULL을 포함하여 512자입니다. 문자열 길이가 512보다 크면 잘리며 오류가 반환되지 않습니다. 하나 이상의 %strkey% 토큰에서 만든 연결된 문자열의 최대 길이는 4096자입니다.
참고
setupapi.h 헤더는 SETUPGetStringField를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | setupapi.h |
라이브러리 | Setupapi.lib |
DLL | Setupapi.dll |
API 세트 | ext-ms-win-setupapi-inf-l1-1-1(Windows 10 버전 10.0.14393에 도입됨) |