MsiGetFileVersionA 함수(msi.h)

MsiGetFileVersion은 설치 관리자가 데이터베이스에서 찾을 것으로 예상되는 형식으로 버전 문자열 및 언어 문자열을 반환합니다. 버전 정보만 원하는 경우 lpLangBufpcchLangBuf 를 0으로 설정합니다. 언어 정보만 원하는 경우 lpVersionBufpcchVersionBuf 를 0으로 설정합니다.

구문

UINT MsiGetFileVersionA(
  [in]      LPCSTR  szFilePath,
  [out]     LPSTR   lpVersionBuf,
  [in, out] LPDWORD pcchVersionBuf,
  [out]     LPSTR   lpLangBuf,
  [in, out] LPDWORD pcchLangBuf
);

매개 변수

[in] szFilePath

파일의 경로를 지정합니다.

[out] lpVersionBuf

파일 버전을 반환합니다.

언어 정보에 대해서만 0으로 설정합니다.

[in, out] pcchVersionBuf

인/아웃 버퍼 수는 TCHAR 수로 계산됩니다.

언어 정보에 대해서만 0으로 설정합니다. 입력할 때 종료되는 null 문자에 대한 공간을 포함하여 버퍼의 전체 크기입니다. 전달된 버퍼가 너무 작으면 반환된 개수에 종료 null 문자가 포함되지 않습니다.

[out] lpLangBuf

파일 언어를 반환합니다.

버전 정보에 대해서만 0으로 설정합니다.

[in, out] pcchLangBuf

인/아웃 버퍼 수는 TCHAR 수로 계산됩니다.

버전 정보에 대해서만 0으로 설정합니다. 입력할 때 종료되는 null 문자에 대한 공간을 포함하여 버퍼의 전체 크기입니다. 전달된 버퍼가 너무 작으면 반환된 개수에 종료 null 문자가 포함되지 않습니다.

반환 값

의미
ERROR_SUCCESS
완료되었습니다.
ERROR_FILE_NOT_FOUND
파일이 없습니다.
ERROR_ACCESS_DENIED
버전 정보를 가져오기 위해 파일을 열 수 없습니다.
ERROR_FILE_INVALID
파일에 버전 정보가 포함되어 있지 않습니다.
ERROR_INVALID_DATA
버전 정보가 잘못되었습니다.
E_FAIL
예기치 않은 오류입니다.

설명

참고

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

요구 사항

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

참고 항목

시스템 상태 함수