PCOPYFILE2_PROGRESS_ROUTINE Rückruffunktion (winbase.h)

Eine anwendungsdefinierte Rückruffunktion, die mit der CopyFile2-Funktion verwendet wird. Sie wird aufgerufen, wenn ein Teil eines Kopier- oder Verschiebungsvorgangs abgeschlossen ist. Der PCOPYFILE2_PROGRESS_ROUTINE Typ definiert einen Zeiger auf diese Rückruffunktion. CopyFile2ProgressRoutine ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.

Syntax

PCOPYFILE2_PROGRESS_ROUTINE Pcopyfile2ProgressRoutine;

COPYFILE2_MESSAGE_ACTION Pcopyfile2ProgressRoutine(
  [in]           const COPYFILE2_MESSAGE *pMessage,
  [in, optional] PVOID pvCallbackContext
)
{...}

Parameter

[in] pMessage

Zeiger auf eine COPYFILE2_MESSAGE-Struktur .

[in, optional] pvCallbackContext

Kopie des Werts, der im element pvCallbackContext der COPYFILE2_EXTENDED_PARAMETERS Struktur übergeben wurde, die an CopyFile2 übergeben wurde.

Rückgabewert

Wert aus der COPYFILE2_MESSAGE_ACTION Enumeration, der angibt, welche Aktion ausgeführt werden soll.

Rückgabecode/-wert BESCHREIBUNG
COPYFILE2_PROGRESS_CONTINUE
0
Fahren Sie mit dem Kopiervorgang fort.
COPYFILE2_PROGRESS_CANCEL
1
Brechen Sie den Kopiervorgang ab. Die CopyFile2-Funktion schlägt fehl, gibt zurück HRESULT_FROM_WIN32(ERROR_REQUEST_ABORTED) , und alle teilweise kopierten Fragmente werden gelöscht.
COPYFILE2_PROGRESS_STOP
2
Beenden Sie den Kopiervorgang. Die CopyFile2-Funktion schlägt fehl, gibt zurück HRESULT_FROM_WIN32(ERROR_REQUEST_ABORTED) , und alle teilweise kopierten Fragmente bleiben intakt. Der Vorgang kann nur mit dem COPY_FILE_RESUME_FROM_PAUSE-Flag neu gestartet werden, wenn COPY_FILE_RESTARTABLE im dwCopyFlags-Member der COPYFILE2_EXTENDED_PARAMETERS Struktur festgelegt wurde, die an die CopyFile2-Funktion übergeben wurde.
COPYFILE2_PROGRESS_QUIET
3
Fahren Sie mit dem Kopiervorgang fort, aber rufen Sie die Rückruffunktion CopyFile2ProgressRoutine für diesen Vorgang nicht erneut auf.
COPYFILE2_PROGRESS_PAUSE
4
Halten Sie den Kopiervorgang an. In den meisten Fällen schlägt die CopyFile2-Funktion fehl und gibt zurück HRESULT_FROM_WIN32(ERROR_REQUEST_PAUSED) , und alle teilweise kopierten Fragmente bleiben intakt (mit Ausnahme des geschriebenen Headers, der verwendet wird, um den Kopiervorgang später fortzusetzen.) Falls der Kopiervorgang zum Zeitpunkt der Verarbeitung der Pausenanforderung abgeschlossen war, wird der CopyFile2-Aufruf erfolgreich abgeschlossen, und es wird kein Resume-Header geschrieben.

Hinweise

Die COPYFILE2_CALLBACK_STREAM_FINISHED Nachricht ist die letzte Nachricht für eine angehaltene Kopie. Wenn COPYFILE2_PROGRESS_PAUSE als Antwort auf eine COPYFILE2_CALLBACK_STREAM_FINISHED Nachricht zurückgegeben wird, werden keine weiteren Rückrufe gesendet.

Um eine Anwendung zu kompilieren, die den PCOPYFILE2_PROGRESS_ROUTINE-Funktionszeigertyp verwendet, definieren Sie das _WIN32_WINNT Makro als 0x0601 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.

Unter Windows 8 und Windows Server 2012 wird diese Funktion von den folgenden Technologien unterstützt.

Technologie Unterstützt
SMB 3.0-Protokoll (Server Message Block) Ja
SMB 3.0 Transparent Failover (TFO) Ja
SMB 3.0 mit Dateifreigaben mit horizontaler Skalierung (SO) Ja
Dateisystem mit freigegebenen Clustervolumes (CsvFS) Ja
Robustes Dateisystem (Resilient File System, ReFS) Ja

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile winbase.h (einschließlich Windows.h)