다음을 통해 공유


MsiExtractPatchXMLDataA 함수(msi.h)

MsiExtractPatchXMLData 함수는 패치가 대상 시스템에 적용되는지 확인하는 데 사용할 수 있는 패치에서 정보를 추출합니다. 함수는 전체 패치 파일 대신 MsiDeterminePatchSequenceMsiDetermineApplicablePatches 에 제공할 수 있는 XML 문자열을 반환합니다. 반환된 정보를 사용하여 패치가 적용 가능한지 여부를 확인할 수 있습니다.

구문

UINT MsiExtractPatchXMLDataA(
  [in]                LPCSTR  szPatchPath,
  [in]                DWORD   dwReserved,
  [out, optional]     LPSTR   szXMLData,
  [in, out, optional] LPDWORD pcchXMLData
);

매개 변수

[in] szPatchPath

쿼리 중인 패치의 전체 경로입니다. null로 종료된 문자열로 전달합니다. 이 매개 변수는 NULL일 수 없습니다.

[in] dwReserved

0이어야 하는 예약된 인수입니다.

[out, optional] szXMLData

추출된 패치 정보를 포함하는 XML 문자열을 저장할 버퍼에 대한 포인터입니다. 이 버퍼는 수신된 정보를 포함할 수 있을 만큼 커야 합니다. 버퍼가 너무 작으면 함수는 ERROR_MORE_DATA 반환하고 *pcchXMLData 를 종료 NULL 문자를 포함하지 않고 값의 TCHAR 수로 설정합니다.

szXMLDataNULL로 설정되고 pcchXMLData가 유효한 포인터로 설정된 경우 함수는 ERROR_SUCCESS 반환하고 *pcchXMLData를 종료 NULL 문자를 포함하지 않고 값의 TCHAR 수로 설정합니다. 그런 다음 함수를 다시 호출하여 값을 검색할 수 있으며, szXMLData 버퍼는 *pcchXMLData + 1자를 포함할 만큼 충분히 큽니다.

[in, out, optional] pcchXMLData

szXMLData 버퍼의 TCHAR 수를 지정하는 변수에 대한 포인터입니다. 함수가 반환될 때 이 매개 변수는 함수가 지정된 버퍼에 값을 복사하는지 여부에 관계없이 요청된 값의 크기로 설정됩니다. 크기는 종료 null 문자를 포함하지 않고 요청된 값의 TCHAR 수로 반환됩니다.

이 매개 변수가 NULL로 설정된 경우 함수는 ERROR_INVALID_PARAMETER 반환합니다.

반환 값

MsiExtractPatchXMLData 함수는 다음 값을 반환할 수 있습니다.

반환 코드 설명
ERROR_FUNCTION_FAILED
이 테이블의 반환 값으로 식별되지 않는 방식으로 함수가 실패했습니다.
ERROR_INVALID_PARAMETER
잘못된 매개 변수가 함수에 전달되었습니다.
ERROR_MORE_DATA
값이 제공된 버퍼에 맞지 않습니다.
ERROR_PATCH_OPEN_FAILED
패치 파일을 열 수 없습니다.
ERROR_SUCCESS
함수가 성공했습니다.
ERROR_PATCH_PACKAGE_INVALID
패치 파일을 열 수 없습니다.
ERROR_CALL_NOT_IMPLEMENTED
MSXML 3.0이 설치되지 않은 경우 이 오류를 반환할 수 있습니다.

설명

Installer 개체의 ExtractPatchXMLData 메서드는 MsiExtractPatchXMLData 함수를 사용합니다.

참고

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

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Server 2008 또는 Windows Vista의 Windows Installer 4.0 또는 Windows Installer 4.5. Windows Server 2003 또는 Windows XP의 Windows Installer 3.0 이상. Windows Installer 버전에 필요한 최소 Windows 서비스 팩에 대한 자세한 내용은 Windows Installer 런타임 요구 사항을 참조하세요.
대상 플랫폼 Windows
헤더 msi.h
라이브러리 Msi.lib
DLL Msi.dll

추가 정보

MsiDetermineApplicablePatches

MsiDeterminePatchSequence

Windows Installer 2.0 이하에서 지원되지 않음