CreateCompressor 函式 (compressapi.h)

產生新的 COMPRESSOR_HANDLE

語法

BOOL CreateCompressor(
  [in]           DWORD                         Algorithm,
  [in, optional] PCOMPRESS_ALLOCATION_ROUTINES AllocationRoutines,
  [out]          PCOMPRESSOR_HANDLE            CompressorHandle
);

參數

[in] Algorithm

這個壓縮演算法和模式要使用的類型。

此參數可以選擇性地與 COMPRESS_RAW 旗標結合下列其中一個值。 使用「位 OR」運算符來包含 COMPRESS_RAW ,並建立區塊模式冰箱。 如果未包含 COMPRESS_RAW ,壓縮 API 會建立緩衝模式壓縮。 如需選取壓縮演算法和模式的詳細資訊,請參閱 使用壓縮 API

意義
COMPRESS_ALGORITHM_MSZIP
2
MSZIP 壓縮演算法
COMPRESS_ALGORITHM_XPRESS
3
XPRESS 壓縮演算法
COMPRESS_ALGORITHM_XPRESS_HUFF
4
使用 Huffman 編碼的 XPRESS 壓縮演算法
COMPRESS_ALGORITHM_LZMS
5
LZMS 壓縮演算法

[in, optional] AllocationRoutines

COMPRESS_ALLOCATION_ROUTINES 結構中的 選擇性記憶體配置和解除分配例程。

[out] CompressorHandle

如果函式成功,則為指定之冰箱的句柄。

傳回值

如果函式成功,則傳回非零的值。 如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

如果壓縮演算法因為某些內部原因而失敗, 則 GetLastError 的錯誤可能會 ERROR_FUNCTION_FAILED。 如果系統找不到符合指定名稱和版本的壓縮演算法,則可以 ERROR_NOT_SUPPORTED錯誤。

規格需求

需求
最低支援的用戶端 Windows 8 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2012 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 compressapi.h
程式庫 Cabinet.lib
Dll Cabinet.dll

另請參閱

COMPRESS_ALLOCATION_ROUTINES

壓縮 API 函式