Compartir a través de


estructura ATOMIC_CREATE_ECP_CONTEXT (ntifs.h)

La estructura ATOMIC_CREATE_ECP_CONTEXT contiene el contexto de 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 se establezca la marca dispersa 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 sin inicializar.
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 puedan 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 de 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

marcas de ATOMIC_CREATE_ECP_IN_OP_FLAG_xxx.

OutOpFlags

marcas ATOMIC_CREATE_ECP_OUT_OP_FLAG_xxx.

InGenFlags

marcas de ATOMIC_CREATE_ECP_IN_GN_FLAG_xxx.

OutGenFlags

marcas de ATOMIC_CREATE_ECP_OUT_GN_FLAG_xxx.

CaseSensitiveFlagsMask

Indica qué marcas 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 de entrada 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 especifica ningún InCaseSensitiveFlags.

Observaciones

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 la creación de parámetros adicionales para obtener más información.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 10, versión 1607
servidor mínimo admitido Windows Server 2016
encabezado de ntifs.h