GetArchiveInfo

アーカイブ内のすべてのファイルの情報を取得する


int _export PASCAL GetArchiveInfo (LPSTR buf, long len, unsigned int flag, HLOCAL *lphInf)

引数 入出力 説明
buf IN
入力がファイルの場合 ファイル名
入力がメモリーの場合 ファイルイメージへのポインタ
len IN
入力がファイルの場合 読み込み開始オフセット(MacBin対応のため)
入力がメモリーの場合 データサイズ
flag IN 追加情報 「xxxx xxxx xxxx xSSS」(下位3bitが意味を持つ)
SSSは入力の種類を意味する
0 ディスクファイル
1 メモリ上のイメージ
lphInf OUT ファイル情報の入ったハンドルを受け取る変数へのポインタ。 Plug-in内で確保されたLOCALメモリーにfileInfo構造体配列が書き込まれ、そのハンドルが返される。 method[0]=='\0'で終端。

戻り値

0なら正常終了、それ以外はエラーコードを返す。

解説

fileInfo
typedef struct fileInfo
{
        unsigned char method[8];        /* 圧縮法の種類 */
        unsigned long position;         /* ファイル上での位置 */
        unsigned long compsize;         /* 圧縮されたサイズ */
        unsigned long filesize;         /* 元のファイルサイズ */
        time_t timestamp;               /* ファイルの更新日時 */
        char path[200];                 /* 相対パス */
        char filename[200];             /* ファイルネーム */
        unsigned long crc;              /* CRC */
} fileInfo;
method '\0'終端なので実質7文字までである
timestamp ないときには0にする(-1ではない)
GetArchiveInfoが返却するメモリは(ファイルの個数 + 1)*sizeof(fileInfo)だけ確保 するのが無難である。



00IN GetPluginInfo IsSupported GetPictureInfo GetPicture GetPreview ConfigurationDlg
00AM GetPluginInfo IsSupported GetArchiveInfo GetFileInfo GetFile ConfigurationDlg


目次へ戻る / トップページへ戻る
この文書の無断転載を禁じます
Copyright 竹村嘉人
Copyright kana