estructura COPYFILE2_EXTENDED_PARAMETERS (winbase.h)
Contiene parámetros extendidos para la función CopyFile2.
Sintaxis
typedef struct COPYFILE2_EXTENDED_PARAMETERS {
DWORD dwSize;
DWORD dwCopyFlags;
BOOL *pfCancel;
PCOPYFILE2_PROGRESS_ROUTINE pProgressRoutine;
PVOID pvCallbackContext;
} COPYFILE2_EXTENDED_PARAMETERS;
Miembros
dwSize
Contiene el tamaño de esta estructura, sizeof(COPYFILE2_EXTENDED_PARAMETERS)
.
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 a la función CopyFile2 con HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS) o HRESULT_FROM_WIN32(ERROR_FILE_EXISTS) . Si también se especifica COPY_FILE_RESUME_FROM_PAUSE, solo se desencadena un error si el archivo de destino no tiene un encabezado de reinicio válido. |
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, pasando 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 la devolución de llamada copyFile2ProgressRoutine realice operaciones que requieran privilegios mayores, 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á por completo. |
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 bloquearlo, el archivo debe copiarse y cifrarse 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 |
Omita 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 al archivo 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 versiones 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 descargar ODX y SMB. Compatible con Windows 10, compilación 19041 y posteriores. |
COPY_FILE_REQUEST_COMPRESSED_TRAFFIC0x10000000 |
Solicite al canal de transferencia subyacente comprimir 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. Compatible con Windows Server 2022 y Windows 10, compilación 1903 y posteriores. (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 superior). |
COPY_FILE_ENABLE_SPARSE_COPY0x20000000 |
Habilite la retenció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 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 .
pvCallbackContext
Puntero a la información de contexto específica de la aplicación que se va a pasar a CopyFile2ProgressRoutine.
Comentarios
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 Uso de los encabezados de Windows.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8 [aplicaciones de escritorio | Aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2012 [aplicaciones de escritorio | Aplicaciones para UWP] |
Encabezado | winbase.h (incluya Windows.h) |