<Return[C]><Top>

CopyFileEx

Declare Function Api_CopyFileEx& Lib "kernel32" Alias "CopyFileExA" (ByVal lpExistingFileName$, ByVal lpNewFileName$, ByVal lpProgressRoutine&, lpData As Any, ByRef pbCancel&, ByVal dwCopyFlags&)

Declare Function CopyFileEx Lib "kernel32" Alias "CopyFileExA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal lpProgressRoutine As Long, lpData As Any, ByRef pbCancel As Long, ByVal dwCopyFlags As Long) As Long

既存のファイルを新規ファイルにコピーする。拡張された属性、OLE 構造化記憶域、NTFS 代替データストリーム、およびファイル属性もコピーされる。ただし、既存ファイルのセキュリティ属性は、新規ファイルにはコピーされない。

パラメータ
lpExistingFileName
    既存ファイル名を表す、NULL で終わる文字列へのポインタを指定する。
lpNewFileName
    新規ファイル名を表す、NULL で終わる文字列へのポインタを指定する。
lpProgressRoutine
    ファイルの各部分がコピーされるたびに呼び出される、LPPROGRESS_ROUTINE 型のコールバック関数のアドレスを指定する。このパラメ

    ータには、NULL を指定できる。
lpData
    コールバック関数に渡す引数を指定する。このパラメータには、NULL を指定できる。
pbCancel
    操作を取り消すブール型変数へのポインタを指定する。コピー操作中に、このフラグを TRUE にセットすると、操作が取り消される。
dwCopyFlags
    ファイルのコピー方法を指定する。このパラメータには、次の値を組み合わせて指定する。

    値                                        

意味                                                                                                             

    COPY_FILE_FAIL_IF_EXISTS

ターゲットファイルがすでに存在している場合、コピー操作は直ちに失敗する。

    COPY_FILE_RESTARTABLE

 

コピーが失敗した場合に備えて、ターゲットファイルでコピーの進捗状況を追跡する。失敗したコピー操作で使った値を lpExistingFileName パラメータと lpNewFileName パラメータに指定すると、この操作を後で再試行することができる。

 

戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、 関数を使う。