Bagikan melalui


SetupGetFileCompressionInfoExW (setupapi.h)

[Fungsi ini tersedia untuk digunakan dalam sistem operasi yang ditunjukkan di bagian Persyaratan. Ini mungkin diubah atau tidak tersedia dalam versi berikutnya. SetupAPI tidak boleh lagi digunakan untuk menginstal aplikasi. Sebagai gantinya, gunakan Penginstal Windows untuk mengembangkan penginstal aplikasi. PenyetelanAPI terus digunakan untuk menginstal pengandar perangkat.]

Fungsi SetupGetFileCompressionInfoEx memeriksa file yang berpotensi dikompresi dan mendapatkan jenis kompresi, jalur lengkap file (termasuk nama file), ukuran terkompresi, dan ukuran file target yang tidak dikompresi. Pemanggil fungsi meneruskan nama file yang akan diperiksa dan penunjuk ke lokasi untuk ukuran buffer dan buffer untuk menerima nama dan jalur file yang dikembalikan.

Untuk menentukan ukuran buffer untuk jalur dan nama file yang dikembalikan, Anda dapat memanggil SetupGetFileCompressionInfoEx dengan ActualSourceFileNameBuffer ditentukan Null dan ActualSourceFileNameLen berisi 0. Fungsi berhasil dan saat pengembalian mengisi RequiredBufferLen.

Sintaksis

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
);

Parameter

[in] SourceFileName

Nama file dari file yang berpotensi dikompresi untuk diperiksa. Jika file tidak ditemukan pada media sumber persis seperti bernama, Penyetelan mencari hingga dua nama alternatif. Misalnya; jika Penyetelan tidak menemukan F:\x86\cmd.exe, penyetelan mencari F:\mpis\cmd.ex_ dan jika nama tersebut tidak ditemukan, maka akan mencari F:\x86\cmd.ex$.

[in, out] ActualSourceFileNameBuffer

Penunjuk ke buffer yang menerima nama file dan jalur aktual jika parameter ini tidak NULL. Ini hanya valid jika fungsi mengembalikan NO_ERROR.

[in, out] ActualSourceFileNameBufferLen

Ukuran buffer yang ditentukan oleh ActualSourceFileNameBuffer, dalam karakter. Anda biasanya akan menggunakan ukuran buffer MAX_PATH. Jika ActualSourceFileNameLen terlalu kecil, fungsi gagal dengan ERROR_INSUFFICIENT_BUFFER. ActualSourceFileNameLen harus berisi nol jika ActualSourceFileNameBuffer NULL.

[out] RequiredBufferLen

Ukuran nama file dan jalur lengkap termasukNULL penghentian , jika parameter ini tidak NULL. Jika ActualSourceFileNameBuffer NULL dan ActualSourceFileNameLen adalah nol, fungsi berhasil tetapi mengisi RequiredBufferLen. Parameter ini hanya valid jika fungsi mengembalikan NO_ERROR atau ERROR_INSUFFICIENT_BUFFER.

[out] SourceFileSize

Penunjuk ke variabel di mana fungsi ini mengembalikan ukuran file dalam bentuknya saat ini, yang merupakan ukuran file saat ini yang dinamai oleh ActualSourceFileNameBuffer. Ukuran ditentukan dengan memeriksa file sumber; ini tidak diambil dari file INF. Ukuran file sumber hanya valid jika fungsi mengembalikan NO_ERROR atau ERROR_INSUFFICIENT_BUFFER.

[out] TargetFileSize

Penunjuk ke variabel di mana fungsi ini mengembalikan ukuran yang akan ditempati file ketika tidak dikompresi atau disalin. Jika file tidak dikompresi, nilai ini akan sama dengan SourceFileSize. Ukuran ditentukan dengan memeriksa file; ini tidak diambil dari file INF. Ukuran file target hanya valid jika fungsi mengembalikan NO_ERROR atau ERROR_INSUFFICIENT_BUFFER.

[out] CompressionType

Penunjuk ke variabel di mana fungsi ini mengembalikan nilai yang menunjukkan jenis pemadatan yang digunakan pada ActualSourceFileName. Jenis pemadatan hanya valid jika fungsi mengembalikan NO_ERROR atau ERROR_INSUFFICIENT_BUFFER. Nilai parameter ini bisa menjadi salah satu bendera berikut.

FILE_COMPRESSION_NONE

File sumber tidak dikompresi dengan algoritma kompresi yang dikenali.

FILE_COMPRESSION_WINLZA

File sumber dikompresi dengan kompresi LZ.

FILE_COMPRESSION_MSZIP

File sumber dikompresi dengan kompresi MSZIP.

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan adalah TRUE (bukan nol).

Jika fungsi gagal, nilai yang dikembalikan adalah FALSE (nol). Fungsi ini juga dapat mengembalikan salah satu kode kesalahan sistem berikut.

Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError.

Komentar

Karena SetupGetFileCompressionInfoEx menentukan kompresi dengan memeriksa file fisik, aplikasi penyiapan Anda harus memastikan bahwa file ada sebelum memanggil SetupGetFileCompressionInfoEx.

Nota

Header setupapi.h mendefinisikan SetupGetFileCompressionInfoEx sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Syarat Nilai
klien minimum yang didukung Windows XP [hanya aplikasi desktop]
server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Platform Target Windows
Header setupapi.h
Pustaka Setupapi.lib
DLL Setupapi.dll

Lihat juga

Functions

Gambaran Umum

SetupDecompressOrCopyFile