<Return[JKL]><Top>

LZInit

Declare Function Api_LZInit& Lib "lz32" Alias "LZInit" (ByVal hfSrc&)

Declare Function LZInit Lib "lz32" Alias "LZInit" (ByVal hfSrc As Long) As Long

ファイルの解凍に必要な内部データ構造体のメモリを確保した後、その内部データ構造体を初期化する。

パラメータ
hfSource
    圧縮ファイルのハンドルを指定する。

戻り値
    関数が成功すると、新しい LZ ファイルハンドルが返る。
    関数が失敗すると、LZERROR_* エラーコードが返る。このコードの値はすべて 0 より小さくなる。LZInit は、 関数も 関数も呼び出さな

    い。そのため、失敗してもスレッドの最終エラーコードは変わらない。
    LZInit 関数が失敗すると、次のいずれかの LZERROR_* コードが返る。

    定数                                       

意味                                                                                                          

    LZERROR_BADINHANDLE

圧縮ファイルのハンドルが無効である。ファイルを読み取ることができない。

    LZERROR_GLOBALLOC

開くことができる圧縮ファイルの最大数を超えたか、ローカルメモリを確保できない。

    LZERROR_GLOBLOCK LZ

ファイルハンドルをロックできない。

    LZERROR_UNKNOWNALG

ファイルの圧縮に使われたアルゴリズムを認識できない。

    拡張エラー情報がないため、GetLastError 関数は使わない。

解説
    一度に開くことができる圧縮ファイルの数は、最大で 16 個までである。同様に、一度に開くことができる圧縮されていないファイルの数も最

    大で 16 個までである。ファイルを使い終わった後、LZInit 関数が返したハンドルを閉じて、この上限を超えないように注意する。
    この関数が返すハンドルは、LZEXPAND.DLL 内で宣言されている関数とのみ互換性がある。ほかのファイル操作には使わない。