この関数は、アーカイブを作成したり、ファイルやフォルダを追加したりする際に呼び出されます。
Syntax C++
int __stdcall ArcPackFilesW(
_In_ wchar_t *PackedFile,
_In_ wchar_t *SubPath,
_In_ wchar_t *SrcPath,
_In_ wchar_t *AddList,
_In_ int Flags,
_In_ __int64 Size,
_In_ LONG_PTR Session,
_In_ ArcProcessDataProcW ProcessDataW,
_In_ LONG_PTR Reserved
);
|
パラメータ
PackedFile [in]
Type: wchar_t*
更新または新規アーカイブへのフルパス (0-終端文字列).
SubPath [in]
Type: wchar_t*
アーカイブ内のサブフォルダ(0-terminated string). アーカイブがアーカイブルートで行われている場合、このパラメータはNULL となります。
例: SubPathに「subdirectoryA1」、AddListに「subdirB1」、「subdirB2」が含まれる場合、ファイルはアーカイブ内のサブフォルダに保存されます。 subdirectoryA1 subdirectoryA2 subdirB1 subdirB2 file" .
SrcPath [in]
Type: wchar_t*
AddList に一覧表示されているすべてのアーカイブ済みファイルのソース フォルダーが含まれています。SrcPath で指定されたパスは、AddList 内のすべてのファイルのパスに追加され、NULL にできます。
AddList [in]
Type: wchar_t*
アーカイブされたすべてのファイルとフォルダの一覧。各ファイルは、ファイル パスを持つ 0 で終わる文字列です。ファイルは互いに続きます。最後のファイルには、追加の 0 文字が追加されます。つまり、リストは 2 つのユニコード文字で終わることになります。
Flags [in]
Type: int
以下のフラグのビットの組み合わせ :
コード
|
コメント
|
PK_PACKEX_MOVE_FILES
1
|
アーカイブ後にファイルを削除
|
PK_PACKEX_SAVE_PATHS
2
|
ファイルをサブフォルダに保存
|
PK_PACKEX_ENCRYPT
4
|
プラグインは、パスワードを要求し、ファイルの内容を暗号化する必要がある
|
PK_PACKEX_ENCRYPTLIST
8
|
プラグインは、パスワードを要求し、ファイルの内容を暗号化する必要があります。
現時点では、このフラグが設定されている場合、フラグPK_PACKEX_ENCRYPT も設定されています。 即ち 、より強力な暗号化のためのフラグです。
|
PK_PACKEX_SOLID
16
|
途切れることのないアーカイブを作る。 アーカイバは、すべてのファイルの内容をひとつのファイルとして解析しなければならないが、 これにより、アーカイブのサイズをかなり小さくすることができる場合があります。
|
Size [in]
Type: __int64
アーカイブファイルの合計サイズ。プラグインはパラメータを使用する必要があります。例えばアーカイブでは非常に大きなファイルに対応していません 。 ArcShowDialogProcW またはエラーコード E_EX_FILE_TOO_BIG を返します。
サイズ が 0 より小さい場合、サイズ には最小限の共通サイズのファイルが含まれます。サイズが大きい可能性があります (すべてのファイルがスキャンされているわけではありません)
Session [in]
Type: LONG_PTR
Session identifier. この値はプロセスデータ W に渡す必要があります。
ProcessDataW [in]
Type: ArcProcessDataProcW
フィードバック関数。実行率を通知し、処理を終了できるようにします。
Reserved [in]
Type: LONG_PTR
予約済み。 これは 0でなければなりません。
Return value
Type: 整数
成功すれば 0 を返し、その他の場合 ? エラーコード
|