Bagikan melalui


struktur ATOMIC_CREATE_ECP_CONTEXT (ntifs.h)

Struktur ATOMIC_CREATE_ECP_CONTEXT berisi konteks parameter buat ekstra (ECP) yang memungkinkan operasi tambahan dilakukan pada file secara atomik selama pembuatan.

Sintaks

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;

Anggota

Size

Ukuran struktur konteks ini, dalam byte.

InFlags

Bendera yang menunjukkan operasi tambahan yang diminta untuk dilakukan dengan operasi buat.

Nilai Makna
ATOMIC_CREATE_ECP_IN_FLAG_SPARSE_SPECIFIED Meminta agar bendera jarang diatur pada file.
ATOMIC_CREATE_ECP_IN_FLAG_REPARSE_POINT_SPECIFIED Meminta agar titik pemisahan ulang diatur pada file.
ATOMIC_CREATE_ECP_IN_FLAG_EOF_SPECIFIED Meminta agar ukuran file diatur pada file. Ini juga menyiratkan
bahwa alokasi pada disk akan terjadi untuk mendukung ukuran file yang diminta.
ATOMIC_CREATE_ECP_IN_FLAG_VDL_SPECIFIED Meminta agar panjang data yang valid diatur pada file. Ini juga menyiratkan bahwa ukuran file diatur ke setidaknya panjang data yang valid yang diminta. CATATAN: ini dianggap sebagai operasi istimewa jika berpotensi
mengekspos data yang tidak diinisialisasi.
ATOMIC_CREATE_ECP_IN_FLAG_OPERATION_MASK Gunakan bendera ini sebagai masker untuk menentukan nilai bendera InFlags lainnya.
ATOMIC_CREATE_ECP_IN_FLAG_BEST_EFFORT Menunjukkan bahwa sistem file harus melakukan operasi pembuatan meskipun beberapa operasi tambahan yang diminta tidak dapat
dilakukan atau tidak didukung oleh sistem file. Pemanggil dapat memeriksa OutFlags untuk melihat operasi mana yang dilakukan. Jika bendera ini tidak ditentukan, sistem file harus gagal membuat operasi jika tidak berhasil melakukan semua operasi tambahan yang diminta.

OutFlags

Bendera yang menunjukkan operasi tambahan aktual yang dilakukan dengan operasi pembuatan yang berhasil.

Nilai Makna
ATOMIC_CREATE_ECP_OUT_FLAG_SPARSE_SET Menunjukkan bahwa bendera jarang diatur pada file.
ATOMIC_CREATE_ECP_OUT_FLAG_REPARSE_POINT_SET Menunjukkan bahwa titik pemilah ulang diatur pada file.
ATOMIC_CREATE_ECP_OUT_FLAG_EOF_SET Menunjukkan bahwa ukuran file diatur pada file, dan alokasi pada disk terjadi untuk mendukung ukuran file yang diminta.
ATOMIC_CREATE_ECP_OUT_FLAG_VDL_SET Menunjukkan bahwa panjang data yang valid diatur pada file, dan bahwa ukuran file diatur ke setidaknya panjang data yang valid yang diminta.
ATOMIC_CREATE_ECP_OUT_FLAG_OPERATION_MASK Gunakan nilai bendera ini sebagai masker untuk menentukan operasi tambahan yang dilakukan dengan operasi buat.

ReparseBufferLength

Panjang anggota ReparseBuffer . Nilai ini tidak boleh melebihi MAXIMUM_REPARSE_DATA_BUFFER_SIZE (16K).

ReparseBuffer

Nilai opsional yang menunjukkan jenis buffer yang digunakan dalam operasi buat. Nilai yang mungkin REPARSE_DATA_BUFFER atau REPARSE_GUID_DATA_BUFFER.

FileSize

Nilai opsional yang digunakan dengan ATOMIC_CREATE_ECP_IN_FLAG_EOF_SPECIFIED untuk menunjukkan ukuran file yang diminta untuk diatur pada file.

ValidDataLength

Nilai opsional yang digunakan dengan ATOMIC_CREATE_ECP_IN_FLAG_VDL_SPECIFIED untuk menunjukkan panjang data valid yang diminta untuk diatur pada file.

FileTimestamps

Arahkan ke struktur FILE_TIMESTAMPS opsional yang berisi instans terakhir yang direkam dari tindakan tertentu pada file.

FileAttributes

Menentukan atribut file.

UsnSourceInfo

Menentukan bendera info sumber Update Sequence Number (USN) opsional.

Usn

Menentukan Nomor Urutan Pembaruan (USN). Nilai ini diisi di akhir GUID_ECP_ATOMIC_CREATE .

SuppressFileAttributeInheritanceMask

Masker yang menunjukkan atribut file yang aturan pewarisan normalnya harus ditekan.

InOpFlags

ATOMIC_CREATE_ECP_IN_OP_FLAG_xxx bendera.

OutOpFlags

ATOMIC_CREATE_ECP_OUT_OP_FLAG_xxx bendera.

InGenFlags

ATOMIC_CREATE_ECP_IN_GN_FLAG_xxx bendera.

OutGenFlags

ATOMIC_CREATE_ECP_OUT_GN_FLAG_xxx bendera.

CaseSensitiveFlagsMask

Menunjukkan bendera FILE_CS_FLAG_xxx mana yang ditentukan; sistem file harus memilih nilai default untuk bendera lain.

InCaseSensitiveFlags

Masukkan bendera sensitif huruf besar/kecil pada file. Bahkan jika tidak ada BEST_EFFORT yang ditentukan, sistem file dapat mengabaikan beberapa InCaseSensitiveFlags. Perilaku ini mirip dengan FileCaseSensitiveInformation sehingga penelepon dapat memeriksa OutCaseSensitiveFlags untuk mengetahui bendera yang ditetapkan. Jika bendera tidak didukung pada beberapa file atau direktori, BEST_EFFORT akan berlaku.

OutCaseSensitiveFlags

Anggota ini mengembalikan bendera sensitif huruf besar/kecil pada file, meskipun tidak ada InCaseSensitiveFlags yang ditentukan.

Keterangan

Nilai GUID_ECP_ATOMIC_CREATE** yang ditentukan sistem digunakan dengan struktur konteks ECP ini saat memanggil rutinitas dukungan terkait ECP seperti FltAllocateExtraCreateParameter dan FsRtlRemoveExtraCreateParameter.

Lihat Pengantar parameter pembuatan ekstra untuk informasi selengkapnya.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 10, version 1607
Server minimum yang didukung Server Windows 2016
Header ntifs.h