Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Принимает блок сведений и сжимает его.
Синтаксис
BOOL Compress(
[in] COMPRESSOR_HANDLE CompressorHandle,
[in] LPCVOID UncompressedData,
[in] SIZE_T UncompressedDataSize,
[out] PVOID CompressedBuffer,
[in] SIZE_T CompressedBufferSize,
[out] PSIZE_T CompressedDataSize
);
Параметры
[in] CompressorHandle
Дескриптор для компрессора, возвращенного CreateCompressor.
[in] UncompressedData
Содержит блок сведений, который требуется сжать. Размер несжатого блока в байтах задается uncompressedDataSize.
[in] UncompressedDataSize
Размер несжатой информации в байтах.
[out] CompressedBuffer
Буфер, получающий сжатые сведения. Максимальный размер буфера в байтах задается параметром CompressedBufferSize.
[in] CompressedBufferSize
Максимальный размер буфера, получающего сжатые сведения, в байтах.
[out] CompressedDataSize
Фактический размер полученных сжатых сведений в байтах.
Возвращаемое значение
Если функция выполняется успешно, возвращается ненулевое значение. Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Если алгоритм сжатия по какой-либо внутренней причине завершается сбоем, можно ERROR_FUNCTION_FAILED ошибку getLastError. Если системе не удается найти дескриптор алгоритма сжатия, ошибка может быть ERROR_INVALID_HANDLE. Если выходной буфер слишком мал для хранения сжатых данных, ошибка может быть ERROR_INSUFFICIENT_BUFFER.
Если выходной буфер CompressedBuffer слишком мал для хранения сжатых данных, функция завершается сбоем и ошибка getLastError может быть ERROR_INSUFFICIENT_BUFFER. В этом случае параметр CompressedDataSize получает с размером, который должен иметь compressedBuffer , чтобы гарантировать успешное выполнение входного буфера. Чтобы определить размер выделяемого буфера вывода, можно задать для свойства CompressedBufferSize нулевое значение.
Требования
| Минимальная версия клиента | Windows 8 [классические приложения | Приложения UWP] |
| Минимальная версия сервера | Windows Server 2012 [классические приложения | Приложения UWP] |
| Целевая платформа | Windows |
| Header | compressapi.h |
| Библиотека | Cab.lib |
| DLL | Cabinet.dll |