CreateDecompressor 函式 (compressapi.h)

產生新的 DECOMPRESSOR_HANDLE

語法

BOOL CreateDecompressor(
  [in]           DWORD                         Algorithm,
  [in, optional] PCOMPRESS_ALLOCATION_ROUTINES AllocationRoutines,
  [out]          PDECOMPRESSOR_HANDLE          DecompressorHandle
);

參數

[in] Algorithm

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

此參數可以選擇性地與 COMPRESS_RAW 旗標結合下列其中一個值。 使用 「bitwise 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] DecompressorHandle

如果函式成功,則為指定解壓縮器的句柄。

傳回值

如果函式成功,則傳回非零的值。 如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 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 函式