estructura COPYFILE2_EXTENDED_PARAMETERS_V2 (winbase.h)
Contiene funcionalidades adicionales actualizadas más allá de la estructura de
Sintaxis
typedef struct COPYFILE2_EXTENDED_PARAMETERS_V2 {
DWORD dwSize;
DWORD dwCopyFlags;
BOOL *pfCancel;
PCOPYFILE2_PROGRESS_ROUTINE pProgressRoutine;
PVOID pvCallbackContext;
DWORD dwCopyFlagsV2;
ULONG ioDesiredSize;
ULONG ioDesiredRate;
LPPROGRESS_ROUTINE pProgressRoutineOld;
PCOPYFILE2_CREATE_OPLOCK_KEYS SourceOplockKeys;
#if ...
PVOID reserved[6];
#elif
PVOID reserved[7];
#else
PVOID reserved[8];
#endif
} COPYFILE2_EXTENDED_PARAMETERS_V2;
Miembros
dwSize
Contiene el tamaño de esta estructura, sizeof(COPYFILE2_EXTENDED_PARAMETERS_V2)
.
dwCopyFlags
Contiene una combinación de cero o más de estos valores de marca.
Valor | Significado |
---|---|
COPY_FILE_FAIL_IF_EXISTS0x00000001 |
Si el archivo de destino existe, se produce un error en la operación de copia inmediatamente. Si existe un archivo o directorio con el nombre de destino, se producirá un error en la llamada de función de |
COPY_FILE_RESTARTABLE0x00000002 |
El archivo se copia de una manera que se puede reiniciar si se vuelven a usar los mismos nombres de archivo de origen y destino. Esto es más lento. |
COPY_FILE_OPEN_SOURCE_FOR_WRITE0x00000004 |
El archivo se copia y el archivo de origen se abre para el acceso de escritura. |
COPY_FILE_ALLOW_DECRYPTED_DESTINATION0x00000008 |
La copia se intentará incluso si el archivo de destino no se puede cifrar. |
COPY_FILE_COPY_SYMLINK0x00000800 |
Si el archivo de origen es un vínculo simbólico, el archivo de destino también es un vínculo simbólico que apunta al mismo archivo que el vínculo simbólico de origen. |
COPY_FILE_NO_BUFFERING0x00001000 |
La copia se realiza mediante E/S sin búfer y se pasan los recursos de caché del sistema. Esta marca se recomienda para copias de archivos muy grandes. No se recomienda pausar copias que usen esta marca. |
COPY_FILE_REQUEST_SECURITY_PRIVILEGES0x00002000 |
Se intenta copiar, especificando ACCESS_SYSTEM_SECURITY para el archivo de origen y ACCESS_SYSTEM_SECURITY \| WRITE_DAC \| WRITE_OWNER para el archivo de destino. Si se deniegan estas solicitudes, la solicitud de acceso se reducirá al nivel de privilegios más alto para el que se concede acceso. Para obtener más información, consulte derecho de acceso SACL. Esto se puede usar para permitir que el CopyFile2ProgressRoutine devolución de llamada para realizar operaciones que requieren privilegios más altos, como copiar los atributos de seguridad para el archivo. |
COPY_FILE_RESUME_FROM_PAUSE0x00004000 |
El archivo de destino se examina para ver si se copió mediante COPY_FILE_RESTARTABLE. Si es así, se reanuda la copia. Si no es así, el archivo se copiará completamente. |
COPY_FILE_NO_OFFLOAD0x00040000 |
No intente usar el mecanismo de descarga de copia de Windows. Por lo general, esto no se recomienda. |
COPY_FILE_IGNORE_EDP_BLOCK0x00400000 |
En lugar de bloquear, el archivo se debe copiar y cifrar en el destino si es compatible con el sistema de archivos de destino. compatible con Windows 10 y versiones posteriores. |
COPY_FILE_IGNORE_SOURCE_ENCRYPTION0x00800000 |
Ignore el estado cifrado del archivo de origen. compatible con Windows 10 y versiones posteriores. |
COPY_FILE_DONT_REQUEST_DEST_WRITE_DAC0x02000000 |
No solicite WRITE_DAC para el acceso a archivos de destino. compatible con Windows 10 y versiones posteriores. |
COPY_FILE_OPEN_AND_COPY_REPARSE_POINT0x00200000 |
Copie siempre el punto de reanálisis independientemente del tipo. Es responsabilidad del autor de la llamada comprender el significado del punto de reanálisis. compatible con Windows 10, compilación 19041 y posteriores. |
COPY_FILE_DIRECTORY0x00000080 |
Indica que el archivo de origen es un archivo de directorio. Cuando se proporciona, el archivo de origen se abre con FILE_OPEN_FOR_BACKUP_INTENT . El archivo de directorio tendrá sus flujos de datos alternativos, información de punto de reanálisis y EAs copiadas como un archivo normal.
compatible con Windows 10, compilación 19041 y posteriores. |
COPY_FILE_SKIP_ALTERNATE_STREAMS0x00008000 |
No copie flujos de datos alternativos. compatible con Windows 10, compilación 19041 y posteriores. |
COPY_FILE_DISABLE_PRE_ALLOCATION0x04000000 |
No asigne previamente el tamaño del archivo de destino antes de realizar la copia. compatible con Windows 10, compilación 19041 y posteriores. |
COPY_FILE_ENABLE_LOW_FREE_SPACE_MODE0x08000000 |
Habilite el modo LowFreeSpace. No se usan E/S superpuestas. No se intenta la descarga de ODX y SMB. compatible con Windows 10, compilación 19041 y posteriores. |
COPY_FILE_REQUEST_COMPRESSED_TRAFFIC0x10000000 |
Solicite el canal de transferencia subyacente comprima los datos durante la operación de copia. Es posible que la solicitud no se admita para todos los medios, en cuyo caso se omite. Los atributos y parámetros de compresión (complejidad computacional, uso de memoria) no se pueden configurar a través de esta API y están sujetos a cambios entre diferentes versiones del sistema operativo. Esta marca se introdujo en Windows 10, versión 1903 y Windows Server 2022. En Windows 10, la marca es compatible con los archivos que residen en recursos compartidos SMB, donde la versión negociada del protocolo SMB es SMB v3.1.1 o posterior. |
COPY_FILE_ENABLE_SPARSE_COPY0x20000000 |
Habilite la conservación del estado disperso del archivo durante la copia. compatible con Windows 11, compilación 22H2 y versiones posteriores. |
pfCancel
Si esta marca se establece en TRUE durante la operación de copia, se cancela la operación de copia.
pProgressRoutine
Dirección opcional de una función de devolución de llamada de tipo PCOPYFILE2_PROGRESS_ROUTINE a la que se llama cada vez que se ha copiado otra parte del archivo. Este parámetro puede ser null. Para obtener más información sobre la función de devolución de llamada de progreso, consulte la función de devolución de llamada CopyFile2ProgressRoutine. Si se proporcionan
pvCallbackContext
Puntero a la información de contexto específica de la aplicación que se va a pasar al CopyFile2ProgressRoutine.
dwCopyFlagsV2
Contiene una combinación de cero o más de estos valores de marca.
Valor | Significado |
---|---|
COPY_FILE2_V2_DONT_COPY_JUNCTIONS0x00000001 |
Deshabilite la copia de uniones. |
ioDesiredSize
Opcional. Tamaño solicitado (en bytes) para cada operación de E/S (es decir, un ciclo de lectura y escritura al copiar el archivo). Esto puede reducirse si no hay suficiente memoria disponible. Si es cero, se usa el tamaño predeterminado. Esto puede omitirse si también se proporciona ioDesiredRate.
ioDesiredRate
Opcional. Tasa de E/S media solicitada, en kilobytes por segundo. Si es cero, las copias se realizan lo más rápido posible.
pProgressRoutineOld
SourceOplockKeys
reserved[6]
reserved[7]
reserved[8]
pProgressRoutineOld. Opcional. Dirección de una función de devolución de llamada de estilo antiguo de tipo LPPROGRESS_ROUTINE a la que se llama cada vez que se ha copiado otra parte del archivo. Este parámetro puede ser null. Para obtener más información, en la función de devolución de llamada de progreso, consulte LPPROGRESS_ROUTINE devolución de llamada. Si se proporcionan
Observaciones
Para compilar una aplicación que use esta estructura, defina la macro _WIN32_WINNT como _WIN32_WINNT_WIN8 o posterior. Para obtener más información, vea Using the Windows Headers.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 11 [aplicaciones de escritorio | Aplicaciones para UWP] |
servidor mínimo admitido | Windows Server 2012 [aplicaciones de escritorio | Aplicaciones para UWP] |
encabezado de |
winbase.h (incluya Windows.h) |
Consulte también
copyFile2 de