COPYFILE2_EXTENDED_PARAMETERS-Struktur (winbase.h)
Enthält erweiterte Parameter für die CopyFile2-Funktion.
Syntax
typedef struct COPYFILE2_EXTENDED_PARAMETERS {
DWORD dwSize;
DWORD dwCopyFlags;
BOOL *pfCancel;
PCOPYFILE2_PROGRESS_ROUTINE pProgressRoutine;
PVOID pvCallbackContext;
} COPYFILE2_EXTENDED_PARAMETERS;
Member
dwSize
Enthält die Größe dieser Struktur, sizeof(COPYFILE2_EXTENDED_PARAMETERS)
.
dwCopyFlags
Enthält eine Kombination aus null oder mehr dieser Flagwerte.
Wert | Bedeutung |
---|---|
COPY_FILE_FAIL_IF_EXISTS0x00000001 |
Wenn die Zieldatei vorhanden ist, schlägt der Kopiervorgang sofort fehl. Wenn eine Datei oder ein Verzeichnis mit dem Zielnamen vorhanden ist, schlägt der CopyFile2-Funktionsaufruf mit oder HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS) HRESULT_FROM_WIN32(ERROR_FILE_EXISTS) fehl. Wenn auch COPY_FILE_RESUME_FROM_PAUSE angegeben wird, wird ein Fehler nur ausgelöst, wenn die Zieldatei keinen gültigen Neustartheader aufweist. |
COPY_FILE_RESTARTABLE0x00000002 |
Die Datei wird so kopiert, dass sie neu gestartet werden kann, wenn die gleichen Quell- und Zieldateinamen erneut verwendet werden. Dies ist langsamer. |
COPY_FILE_OPEN_SOURCE_FOR_WRITE0x00000004 |
Die Datei wird kopiert, und die Quelldatei wird für den Schreibzugriff geöffnet. |
COPY_FILE_ALLOW_DECRYPTED_DESTINATION0x00000008 |
Die Kopie wird auch dann versucht, wenn die Zieldatei nicht verschlüsselt werden kann. |
COPY_FILE_COPY_SYMLINK0x00000800 |
Wenn die Quelldatei ein symbolischer Link ist, ist die Zieldatei auch ein symbolischer Link, der auf dieselbe Datei wie der symbolische Quelllink verweist. |
COPY_FILE_NO_BUFFERING0x00001000 |
Die Kopie wird mithilfe von nicht gepufferten E/A-Vorgängen durchgeführt, wobei die Systemcacheressourcen umgangen werden. Dieses Flag wird für sehr große Dateikopien empfohlen. Es wird nicht empfohlen, Kopien anzuhalten, die dieses Flag verwenden. |
COPY_FILE_REQUEST_SECURITY_PRIVILEGES0x00002000 |
Die Kopie wird versucht, wobei für die Quelldatei und ACCESS_SYSTEM_SECURITY \| WRITE_DAC \| WRITE_OWNER die Zieldatei angegeben ACCESS_SYSTEM_SECURITY wird. Wenn diese Anforderungen verweigert werden, wird die Zugriffsanforderung auf die höchste Berechtigungsstufe reduziert, für die der Zugriff gewährt wird. Weitere Informationen finden Sie unter SACL-Zugriffsberechtigung. Dies kann verwendet werden, damit der CopyFile2ProgressRoutine-Rückruf Vorgänge ausführt, die höhere Berechtigungen erfordern, z. B. das Kopieren der Sicherheitsattribute für die Datei. |
COPY_FILE_RESUME_FROM_PAUSE0x00004000 |
Die Zieldatei wird untersucht, um festzustellen, ob sie mit COPY_FILE_RESTARTABLE kopiert wurde. Wenn ja, wird die Kopie fortgesetzt. Andernfalls wird die Datei vollständig kopiert. |
COPY_FILE_NO_OFFLOAD0x00040000 |
Versuchen Sie nicht, den Windows-Kopier-Auslagerungsmechanismus zu verwenden. Dies wird im Allgemeinen nicht empfohlen. |
COPY_FILE_IGNORE_EDP_BLOCK0x00400000 |
Anstatt zu blockieren, sollte die Datei kopiert und auf dem Ziel verschlüsselt werden, wenn sie vom Zieldateisystem unterstützt wird. Unterstützt auf Windows 10 und höher. |
COPY_FILE_IGNORE_SOURCE_ENCRYPTION0x00800000 |
Ignorieren Sie den verschlüsselten Zustand der Quelldatei. Unterstützt auf Windows 10 und höher. |
COPY_FILE_DONT_REQUEST_DEST_WRITE_DAC0x02000000 |
Fordern Sie keine WRITE_DAC für den Zieldateizugriff an. Unterstützt auf Windows 10 und höher. |
COPY_FILE_OPEN_AND_COPY_REPARSE_POINT0x00200000 |
Kopieren Sie immer den Analysepunkt unabhängig vom Typ. Es liegt in der Verantwortung des Aufrufers, die Bedeutung des Analysepunkts zu verstehen. Unterstützt auf Windows 10, Build 19041 und höher. |
COPY_FILE_DIRECTORY0x00000080 |
Gibt an, dass die Quelldatei eine Verzeichnisdatei ist. Wenn angegeben, wird die Quelldatei mit FILE_OPEN_FOR_BACKUP_INTENT geöffnet. Die Verzeichnisdatei verfügt über alternative Datenströme, Analysepunktinformationen und EAs, die wie eine normale Datei kopiert werden. Unterstützt in Windows 10, Build 19041 und höher. |
COPY_FILE_SKIP_ALTERNATE_STREAMS0x00008000 |
Kopieren Sie keine alternativen Datenströme. Unterstützt in Windows 10, Build 19041 und höher. |
COPY_FILE_DISABLE_PRE_ALLOCATION0x04000000 |
Bevor Sie die Kopie durchführen, müssen Sie die Zieldateigröße nicht vorab allocatsieren. Unterstützt in Windows 10, Build 19041 und höher. |
COPY_FILE_ENABLE_LOW_FREE_SPACE_MODE0x08000000 |
Aktivieren Sie den LowFreeSpace-Modus. Es werden keine überlappenden E/A-Vorgänge verwendet. ODX- und SMB-Auslagerung werden nicht versucht. Unterstützt in Windows 10, Build 19041 und höher. |
COPY_FILE_REQUEST_COMPRESSED_TRAFFIC0x10000000 |
Fordern Sie den zugrunde liegenden Übertragungskanal an, die Daten während des Kopiervorgangs zu komprimieren. Die Anforderung wird möglicherweise nicht für alle Medien unterstützt, in diesem Fall wird sie ignoriert. Die Komprimierungsattribute und -parameter (Rechenkomplexität, Arbeitsspeicherauslastung) sind über diese API nicht konfigurierbar und können sich zwischen verschiedenen Betriebssystemversionen ändern. Unterstützt in Windows Server 2022 und Windows 10, Build 1903 und höher. (Auf Windows 10 wird das Flag für Dateien unterstützt, die sich auf SMB-Freigaben befinden, wobei die ausgehandelte SMB-Protokollversion SMB v3.1.1 oder höher ist.) |
COPY_FILE_ENABLE_SPARSE_COPY0x20000000 |
Aktivieren Sie das Beibehalten des Sparsezustands der Datei während des Kopierens. Unterstützt in Windows 11, Build 22H2 und höher. |
pfCancel
Wenn dieses Flag während des Kopiervorgangs auf TRUE festgelegt ist, wird der Kopiervorgang abgebrochen.
pProgressRoutine
Die optionale Adresse einer Rückruffunktion vom Typ PCOPYFILE2_PROGRESS_ROUTINE , die jedes Mal aufgerufen wird, wenn ein anderer Teil der Datei kopiert wurde. Dieser Parameter kann NULL sein. Weitere Informationen zur Statusrückruffunktion finden Sie in der Rückruffunktion CopyFile2ProgressRoutine .
pvCallbackContext
Ein Zeiger auf anwendungsspezifische Kontextinformationen, die an copyFile2ProgressRoutine übergeben werden sollen.
Hinweise
Um eine Anwendung zu kompilieren, die diese Struktur verwendet, definieren Sie das _WIN32_WINNT Makro als _WIN32_WINNT_WIN8 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2012 [Desktop-Apps | UWP-Apps] |
Kopfzeile | winbase.h (einschließlich Windows.h) |