다음을 통해 공유


SetupGetFileCompressionInfoExW 함수(setupapi.h)

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

SetupGetFileCompressionInfoEx 함수는 잠재적으로 압축된 파일을 검사하고 압축 형식, 파일의 전체 경로(파일 이름 포함), 압축된 크기 및 압축되지 않은 대상 파일의 크기를 가져옵니다. 함수의 호출자는 검사할 파일의 이름과 버퍼 및 버퍼 크기의 위치에 대한 포인터를 전달하여 반환된 파일 이름과 경로를 받습니다.

반환된 경로 및 파일 이름의 버퍼 크기를 확인하려면 ActualSourceFileNameBufferNull로 지정되고 ActualSourceFileNameNameLen이 0을 포함하는 SetupGetFileCompressionInfoEx를 호출할 수 있습니다. 함수가 성공하고 반환할 때 RequiredBufferLen을 채웁니다.

구문

WINSETUPAPI BOOL SetupGetFileCompressionInfoExW(
  [in]      PCWSTR SourceFileName,
  [in, out] PWSTR  ActualSourceFileNameBuffer,
  [in, out] DWORD  ActualSourceFileNameBufferLen,
  [out]     PDWORD RequiredBufferLen,
  [out]     PDWORD SourceFileSize,
  [out]     PDWORD TargetFileSize,
  [out]     PUINT  CompressionType
);

매개 변수

[in] SourceFileName

검사할 잠재적으로 압축된 파일의 파일 이름입니다. 원본 미디어에서 이름이 정확히 명명된 파일을 찾을 수 없는 경우 설치 프로그램에서는 최대 두 개의 대체 이름을 검색합니다. 예를 들어; 설치 프로그램에서 F:\x86\cmd.exe 찾을 수 없는 경우 F:\mpis\cmd.ex_ 검색하고 해당 이름을 찾을 수 없는 경우 F:\x86\cmd.ex$를 검색합니다.

[in, out] ActualSourceFileNameBuffer

이 매개 변수가 NULL이 아닌 경우 실제 파일 이름 및 경로를 수신하는 버퍼에 대한 포인터입니다. 함수가 NO_ERROR 반환하는 경우에만 유효합니다.

[in, out] ActualSourceFileNameBufferLen

ActualSourceFileNameBuffer로 지정된 버퍼의 크기(문자)입니다. 일반적으로 버퍼 크기는 MAX_PATH 사용합니다. ActualSourceFileNameLen이 너무 작으면 함수가 ERROR_INSUFFICIENT_BUFFER 실패합니다. ActualSourceFileNameBufferNULL인 경우 ActualSourceFileNameLen은 0을 포함해야 합니다.

[out] RequiredBufferLen

이 매개 변수가 NULL이 아닌 경우 종결 NULL을 포함한 파일 이름 및 전체 경로의 크기입니다. ActualSourceFileNameBufferNULL이고 ActualSourceFileNameLen이 0이면 함수는 성공하지만 RequiredBufferLen을 채웁니다. 이 매개 변수는 함수가 NO_ERROR 또는 ERROR_INSUFFICIENT_BUFFER 반환하는 경우에만 유효합니다.

[out] SourceFileSize

이 함수가 현재 형식의 파일 크기를 반환하는 변수에 대한 포인터로, ActualSourceFileNameBuffer로 명명된 파일의 현재 크기입니다. 크기는 원본 파일을 검사하여 결정됩니다. INF 파일에서 검색되지 않습니다. 원본 파일 크기는 함수가 NO_ERROR 반환하거나 ERROR_INSUFFICIENT_BUFFER 경우에만 유효합니다.

[out] TargetFileSize

이 함수가 압축을 풀거나 복사할 때 파일이 차지하는 크기를 반환하는 변수에 대한 포인터입니다. 파일이 압축되지 않으면 이 값은 SourceFileSize와 동일합니다. 크기는 파일을 검사하여 결정됩니다. INF 파일에서 검색되지 않습니다. 대상 파일 크기는 함수가 NO_ERROR 또는 ERROR_INSUFFICIENT_BUFFER 반환하는 경우에만 유효합니다.

[out] CompressionType

이 함수가 ActualSourceFileName에서 사용되는 압축 유형을 나타내는 값을 반환하는 변수에 대한 포인터입니다. 압축 형식은 함수가 NO_ERROR 반환하거나 ERROR_INSUFFICIENT_BUFFER 경우에만 유효합니다. 이 매개 변수 값은 다음 플래그 중 하나일 수 있습니다.

FILE_COMPRESSION_NONE

소스 파일은 인식된 압축 알고리즘으로 압축되지 않습니다.

FILE_COMPRESSION_WINLZA

원본 파일은 LZ 압축으로 압축됩니다.

FILE_COMPRESSION_MSZIP

원본 파일은 MSZIP 압축으로 압축됩니다.

반환 값

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

함수가 실패하면 반환 값은 FALSE (0)입니다. 함수는 다음 시스템 오류 코드 중 하나를 반환할 수도 있습니다.

확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

SetupGetFileCompressionInfoEx는 물리적 파일을 검사하여 압축을 결정하므로 설치 애플리케이션은 SetupGetFileCompressionInfoEx를 호출하기 전에 파일이 있는지 확인해야 합니다.

참고

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

요구 사항

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

참조

함수

개요

SetupDecompressOrCopyFile