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