Freigeben über


CreateCompressor-Funktion (compressapi.h)

Generiert einen neuen COMPRESSOR_HANDLE.

Syntax

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

Parameter

[in] Algorithm

Der Typ des Komprimierungsalgorithmus und des Modus, der von diesem Kompressor verwendet werden soll.

Dieser Parameter kann über einen der folgenden Werte verfügen, der optional mit dem flag COMPRESS_RAW kombiniert wird. Verwenden Sie einen "bitweisen OR"-Operator, um COMPRESS_RAW einzuschließen und einen Blockmoduskompressor zu erstellen. Wenn COMPRESS_RAW nicht enthalten ist, erstellt die Komprimierungs-API einen Puffermodus-Kompressor. Weitere Informationen zum Auswählen eines Komprimierungsalgorithmus und -modus finden Sie unter Verwenden der Komprimierungs-API.

Wert Bedeutung
COMPRESS_ALGORITHM_MSZIP
2
MSZIP-Komprimierungsalgorithmus
COMPRESS_ALGORITHM_XPRESS
3
XPRESS-Komprimierungsalgorithmus
COMPRESS_ALGORITHM_XPRESS_HUFF
4
XPRESS-Komprimierungsalgorithmus mit Huffman-Codierung
COMPRESS_ALGORITHM_LZMS
5
LZMS-Komprimierungsalgorithmus

[in, optional] AllocationRoutines

Optionale Speicherbelegungs- und Freigaberoutinen in einer COMPRESS_ALLOCATION_ROUTINES-Struktur .

[out] CompressorHandle

Wenn die Funktion erfolgreich ist, wird der Ziehpunkt zum angegebenen Kompressor verwendet.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null. Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Wenn der Komprimierungsalgorithmus aus einem internen Grund fehlschlägt, kann der Fehler von GetLastErrorERROR_FUNCTION_FAILED werden. Wenn das System keinen Komprimierungsalgorithmus findet, der dem angegebenen Namen und der angegebenen Version entspricht, kann der Fehler ERROR_NOT_SUPPORTED werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile compressapi.h
Bibliothek Cabinet.lib
DLL Cabinet.dll

Weitere Informationen

COMPRESS_ALLOCATION_ROUTINES

Komprimierungs-API-Funktionen