CreateDecompressor 函数 (compressapi.h)

生成新的 DECOMPRESSOR_HANDLE

语法

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

参数

[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] DecompressorHandle

如果函数成功,则为指定解压缩器的句柄。

返回值

如果该函数成功,则返回值为非零值。 如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。

注解

如果压缩算法由于某种内部原因而失败,则可以ERROR_FUNCTION_FAILEDGetLastError 的错误。 如果系统找不到与指定名称和版本匹配的压缩算法,则可以 ERROR_NOT_SUPPORTED错误。

要求

要求
最低受支持的客户端 Windows 8 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2012 [桌面应用 |UWP 应用]
目标平台 Windows
标头 compressapi.h
Library Cabinet.lib
DLL Cabinet.dll

另请参阅

COMPRESS_ALLOCATION_ROUTINES

压缩 API 函数