Функция LZRead (lzexpand.h)
Считывает (максимум) указанное количество байтов из файла и копирует их в буфер.
Синтаксис
INT LZRead(
[in] INT hFile,
[out] CHAR *lpBuffer,
[in] INT cbRead
);
Параметры
[in] hFile
Дескриптор файла.
[out] lpBuffer
Указатель на буфер, который получает байты, считанные из файла. Убедитесь, что этот буфер больше , чем cbRead.
[in] cbRead
Число считываемых байтов.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение указывает количество прочитанных байтов.
Если функция завершается сбоем, возвращаемое значение представляет собой код LZERROR_*. Эти коды имеют значения меньше нуля. Обратите внимание, что LZRead не вызывает ни SetLastError, ни SetLastErrorEx; таким образом, его сбой не влияет на код последней ошибки потока.
Ниже приведен список кодов ошибок, которые LZRead может возвращать при сбое.
Код возврата | Описание |
---|---|
|
Недопустимый дескриптор, определяющий исходный файл. Не удается прочитать файл. |
|
Недопустимый дескриптор, определяющий целевой файл. Не удается записать файл. |
|
Один из входных параметров недопустим. |
|
Превышено максимальное количество открытых сжатых файлов или не удается выделить локальную память. |
|
Дескриптор файла LZ не может быть заблокирован. |
|
Недопустимый формат исходного файла. |
|
Недостаточно места для выходного файла. |
Для этой функции нет расширенных сведений об ошибке; не вызывать GetLastError.
Комментарии
Дескриптор, определяющий файл, должен быть получен путем вызова функции LZInit или LZOpenFile .
Если файл сжат, LZRead работает с развернутым изображением файла и копирует байты данных в указанный буфер.
В Windows 8 и Windows Server 2012 эта функция поддерживается следующими технологиями.
Технология | Поддерживается |
---|---|
Протокол SMB 3.0 | Да |
SMB 3.0 Transparent Failover (TFO) | Да |
SMB 3.0 с масштабируемыми общими папками (SO) | Да |
Файловая система общего тома кластера (CSVFS) | Да |
Восстанавливаемая файловая система (ReFS) | Да |
CsvFs выполняет перенаправление операций ввода-вывода для сжатых файлов.
Требования
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | lzexpand.h (включая Windows.h) |
Библиотека | Lz32.lib |
DLL | Lz32.dll |