Bagikan melalui


LPPROGRESS_ROUTINE fungsi panggilan balik (winbase.h)

Fungsi panggilan balik yang ditentukan aplikasi yang digunakan dengan fungsi CopyFileEx, MoveFileTransacted, dan MoveFileWithProgress . Ini dipanggil ketika sebagian operasi salinan atau pemindahan selesai. Jenis LPPROGRESS_ROUTINE menentukan penunjuk ke fungsi panggilan balik ini. CopyProgressRoutine adalah tempat penampung untuk nama fungsi yang ditentukan aplikasi.

Sintaks

LPPROGRESS_ROUTINE LpprogressRoutine;

DWORD LpprogressRoutine(
  [in]           LARGE_INTEGER TotalFileSize,
  [in]           LARGE_INTEGER TotalBytesTransferred,
  [in]           LARGE_INTEGER StreamSize,
  [in]           LARGE_INTEGER StreamBytesTransferred,
  [in]           DWORD dwStreamNumber,
  [in]           DWORD dwCallbackReason,
  [in]           HANDLE hSourceFile,
  [in]           HANDLE hDestinationFile,
  [in, optional] LPVOID lpData
)
{...}

Parameter

[in] TotalFileSize

Ukuran total file, dalam byte.

[in] TotalBytesTransferred

Jumlah total byte yang ditransfer dari file sumber ke file tujuan sejak operasi salin dimulai.

[in] StreamSize

Ukuran total aliran file saat ini, dalam byte.

[in] StreamBytesTransferred

Jumlah total byte dalam aliran saat ini yang telah ditransfer dari file sumber ke file tujuan sejak operasi salin dimulai.

[in] dwStreamNumber

Handel ke aliran saat ini. Pertama kali CopyProgressRoutine dipanggil, nomor aliran adalah 1.

[in] dwCallbackReason

Alasan bahwa CopyProgressRoutine dipanggil. Parameter ini bisa menjadi salah satu nilai berikut.

Nilai Makna
CALLBACK_CHUNK_FINISHED
0x00000000
Bagian lain dari file data disalin.
CALLBACK_STREAM_SWITCH
0x00000001
Aliran lain dibuat dan akan disalin. Ini adalah alasan panggilan balik yang diberikan ketika rutinitas panggilan balik pertama kali dipanggil.

[in] hSourceFile

Handel ke file sumber.

[in] hDestinationFile

Handel ke file tujuan

[in, optional] lpData

Argumen diteruskan ke CopyProgressRoutine oleh CopyFileEx, MoveFileTransacted, atau MoveFileWithProgress.

Mengembalikan nilai

Fungsi CopyProgressRoutine harus mengembalikan salah satu nilai berikut.

Mengembalikan kode/nilai Deskripsi
PROGRESS_CANCEL
1
Batalkan operasi salin dan hapus file tujuan.
PROGRESS_CONTINUE
0
Lanjutkan operasi salin.
PROGRESS_QUIET
3
Lanjutkan operasi salin, tetapi berhenti memanggil CopyProgressRoutine untuk melaporkan kemajuan.
PROGRESS_STOP
2
Hentikan operasi salin. Ini dapat dimulai ulang di lain waktu.

Keterangan

Aplikasi dapat menggunakan informasi ini untuk menampilkan bilah kemajuan yang menunjukkan jumlah total byte yang disalin sebagai persen dari ukuran total file.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header winbase.h (termasuk Windows.h)

Lihat juga

CopyFileEx

Fungsi Manajemen File

MoveFileTransacted

MoveFileWithProgress