次の方法で共有


LZInit 関数 (lzexpand.h)

ファイルの圧縮解除に必要な内部データ構造にメモリを割り当て、そのデータ構造を作成して初期化します。

構文

INT LZInit(
  [in] INT hfSource
);

パラメーター

[in] hfSource

ファイルへのハンドル。

戻り値

関数が成功した場合、戻り値は新しい LZ ファイル ハンドルになります。

関数が失敗した場合、戻り値はLZERROR_* コードです。 これらのコードの値は 0 未満です。 LZInit はSetLastError も SetLastErrorEx呼び出しません。したがって、そのエラーはスレッドの最後のエラー コードには影響しません。

エラー時に LZInit から返されるエラー コードの一覧を次に示します。

リターン コード 説明
LZERROR_BADINHANDLE
ソース ファイルを識別するハンドルが無効です。 ファイルを読み取ることができません。
LZERROR_GLOBALLOC
開いている圧縮ファイルの最大数を超えているか、ローカル メモリを割り当てることができません。
LZERROR_GLOBLOCK
LZ ファイル ハンドルをロックダウンすることはできません。
LZERROR_UNKNOWNALG
ファイルは、認識できない圧縮アルゴリズムを使用して圧縮されます。
 

この関数の拡張エラー情報はありません。 GetLastError を呼び出さないでください。

解説

任意の時点で最大 16 個の圧縮ファイルを開くことができます。 同様に、最大 16 個の圧縮されていないファイルをいつでも開くことができます。 LZInit によって返されるハンドルは、ファイルを使用して終了する際に閉じないように注意する必要があります。そうしないと、アプリケーションが誤って 16 ファイルの制限に達する可能性があります。

この関数が返すハンドルは、Lz32.dll の関数とのみ互換性があります。他のファイル操作には使用しないでください。

Windows 8 と Windows Server 2012 では、この関数は、次のテクノロジによってサポートされています。

テクノロジ サポートされています
サーバー メッセージ ブロック (SMB) 3.0 プロトコル はい
SMB 3.0 Transparent Failover (TFO) はい
スケールアウト ファイル共有 (SO) を使う SMB 3.0 はい
クラスターの共有ボリューム ファイル システム (CsvFS) はい
Resilient File System (ReFS) はい
 

CsvFs によって、圧縮されたファイルのリダイレクトされた IO が実行されます。

必要条件

   
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー lzexpand.h (Windows.h を含む)
Library Lz32.lib
[DLL] Lz32.dll

関連項目

ファイルの圧縮と圧縮解除

File Management 関数