estructura ATOMIC_CREATE_ECP_CONTEXT (ntifs.h)
La estructura ATOMIC_CREATE_ECP_CONTEXT contiene el contexto del parámetro de creación adicional (ECP) que permite realizar operaciones complementarias en un archivo de forma atómica durante la creación.
Sintaxis
typedef struct _ATOMIC_CREATE_ECP_CONTEXT {
USHORT Size;
USHORT InFlags;
USHORT OutFlags;
USHORT ReparseBufferLength;
PREPARSE_DATA_BUFFER ReparseBuffer;
LONGLONG FileSize;
LONGLONG ValidDataLength;
PFILE_TIMESTAMPS FileTimestamps;
ULONG FileAttributes;
ULONG UsnSourceInfo;
USN Usn;
ULONG SuppressFileAttributeInheritanceMask;
ULONG InOpFlags;
ULONG OutOpFlags;
ULONG InGenFlags;
ULONG OutGenFlags;
ULONG CaseSensitiveFlagsMask;
ULONG InCaseSensitiveFlags;
ULONG OutCaseSensitiveFlags;
} ATOMIC_CREATE_ECP_CONTEXT, *PATOMIC_CREATE_ECP_CONTEXT;
Miembros
Size
Tamaño de esta estructura de contexto, en bytes.
InFlags
Marcas que indican las operaciones complementarias solicitadas que se van a realizar con la operación de creación.
Valor | Significado |
---|---|
ATOMIC_CREATE_ECP_IN_FLAG_SPARSE_SPECIFIED | Solicita que la marca dispersa se establezca en el archivo. |
ATOMIC_CREATE_ECP_IN_FLAG_REPARSE_POINT_SPECIFIED | Solicita que se establezca un punto de reanálisis en el archivo. |
ATOMIC_CREATE_ECP_IN_FLAG_EOF_SPECIFIED | Solicita que se establezca un tamaño de archivo en el archivo. Esto también implica |
esa asignación en disco se producirá para admitir el tamaño de archivo solicitado. | |
ATOMIC_CREATE_ECP_IN_FLAG_VDL_SPECIFIED | Solicita que se establezca una longitud de datos válida en el archivo. Esto también implica que el tamaño del archivo se establezca en al menos la longitud de datos válida solicitada. NOTA: esto se considera una operación con privilegios si podría ser posible. |
exponer datos no inicializados. | |
ATOMIC_CREATE_ECP_IN_FLAG_OPERATION_MASK | Use esta marca como máscara para especificar los demás valores de marca InFlags . |
ATOMIC_CREATE_ECP_IN_FLAG_BEST_EFFORT | Indica que el sistema de archivos debe realizar la operación de creación aunque algunas de las operaciones complementarias solicitadas no pudieran ser |
realizado o no es compatible con el sistema de archivos. El autor de la llamada puede comprobar OutFlags para ver qué operaciones se realizaron. Si no se especifica esta marca, el sistema de archivos debe producir un error en la operación de creación si no puede realizar correctamente todas las operaciones complementarias solicitadas. |
OutFlags
Marcas que indican las operaciones complementarias reales realizadas con una operación de creación correcta.
Valor | Significado |
---|---|
ATOMIC_CREATE_ECP_OUT_FLAG_SPARSE_SET | Indica que la marca dispersa se estableció en el archivo. |
ATOMIC_CREATE_ECP_OUT_FLAG_REPARSE_POINT_SET | Indica que se estableció un punto de reanálisis en el archivo. |
ATOMIC_CREATE_ECP_OUT_FLAG_EOF_SET | Indica que se estableció un tamaño de archivo en el archivo y que se produjo la asignación en disco para admitir el tamaño de archivo solicitado. |
ATOMIC_CREATE_ECP_OUT_FLAG_VDL_SET | Indica que se estableció una longitud de datos válida en el archivo y que el tamaño del archivo se estableció en al menos la longitud de datos válida solicitada. |
ATOMIC_CREATE_ECP_OUT_FLAG_OPERATION_MASK | Use este valor de marca como máscara para determinar las operaciones complementarias que se realizaron con la operación de creación. |
ReparseBufferLength
Longitud del miembro ReparseBuffer . Este valor no puede superar el MAXIMUM_REPARSE_DATA_BUFFER_SIZE (16 000).
ReparseBuffer
Valor opcional que indica el tipo de búfer usado en la operación de creación. Los valores posibles son REPARSE_DATA_BUFFER o REPARSE_GUID_DATA_BUFFER.
FileSize
Valor opcional que se usa con ATOMIC_CREATE_ECP_IN_FLAG_EOF_SPECIFIED para indicar el tamaño de archivo solicitado que se va a establecer en el archivo.
ValidDataLength
Valor opcional que se usa con ATOMIC_CREATE_ECP_IN_FLAG_VDL_SPECIFIED para indicar la longitud de datos válida solicitada que se va a establecer en el archivo.
FileTimestamps
Puntero a una estructura de FILE_TIMESTAMPS opcional que contiene la última instancia registrada de acciones específicas en un archivo.
FileAttributes
Especifica los atributos de un archivo.
UsnSourceInfo
Especifica marcas de información de origen opcionales del número de secuencia de actualización (USN).
Usn
Especifica el número de secuencia de actualización (USN). Este valor se rellena al final de GUID_ECP_ATOMIC_CREATE .
SuppressFileAttributeInheritanceMask
Máscara que indica los atributos de archivo cuyas reglas de herencia normales deben suprimirse.
InOpFlags
ATOMIC_CREATE_ECP_IN_OP_FLAG_xxx marcas.
OutOpFlags
ATOMIC_CREATE_ECP_OUT_OP_FLAG_xxx marcas.
InGenFlags
ATOMIC_CREATE_ECP_IN_GN_FLAG_xxx marcas.
OutGenFlags
marcas de ATOMIC_CREATE_ECP_OUT_GN_FLAG_xxx.
CaseSensitiveFlagsMask
Indica qué marcas de FILE_CS_FLAG_xxx se especifican; Los sistemas de archivos deben elegir los valores predeterminados para otras marcas.
InCaseSensitiveFlags
Marcas que distinguen mayúsculas de minúsculas en el archivo. Incluso si no se especifica ningún BEST_EFFORT, los sistemas de archivos pueden omitir algunos de los inCaseSensitiveFlags. El comportamiento es similar a FileCaseSensitiveInformation, por lo que los autores de llamadas podrían examinar OutCaseSensitiveFlags para conocer las marcas establecidas. Si no se admite una marca en algún archivo o directorio, BEST_EFFORT surtiría efecto.
OutCaseSensitiveFlags
Este miembro devuelve las marcas que distinguen mayúsculas de minúsculas en el archivo, incluso si no se especifican inCaseSensitiveFlags .
Comentarios
El valor de GUID_ECP_ATOMIC_CREATE** definido por el sistema se usa con esta estructura de contexto ECP al llamar a rutinas de soporte técnico relacionadas con ECP, como FltAllocateExtraCreateParameter y FsRtlRemoveExtraCreateParameter.
Consulte Introducción a los parámetros de creación adicionales para obtener más información.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 10, versión 1607 |
Servidor mínimo compatible | Windows Server 2016 |
Encabezado | ntifs.h |