enumerasi CSV_CONTROL_OP (ntifs.h)

Menentukan jenis operasi kontrol volume bersama kluster (CSV) untuk digunakan dengan kode kontrol FSCTL_CSV_CONTROL .

Sintaks

typedef enum _CSV_CONTROL_OP {
  CsvControlStartRedirectFile = 0x02,
  CsvControlStopRedirectFile = 0x03,
  CsvControlQueryRedirectState = 0x04,
  CsvControlQueryFileRevision = 0x06,
  CsvControlQueryMdsPath = 0x08,
  CsvControlQueryFileRevisionFileId128 = 0x09,
  CsvControlQueryVolumeRedirectState = 0x0a,
  CsvControlEnableUSNRangeModificationTracking = 0x0d,
  CsvControlMarkHandleLocalVolumeMount = 0x0e,
  CsvControlUnmarkHandleLocalVolumeMount = 0x0f,
  CsvControlGetCsvFsMdsPathV2 = 0x12,
  CsvControlDisableCaching = 0x13,
  CsvControlEnableCaching = 0x14,
  CsvControlStartForceDFO = 0x15,
  CsvControlStopForceDFO = 0x16,
  CsvControlQueryMdsPathNoPause = 0x17,
  CsvControlSetVolumeId = 0x18,
  CsvControlQueryVolumeId = 0x19
} CSV_CONTROL_OP, *PCSV_CONTROL_OP;

Konstanta

 
CsvControlStartRedirectFile
Nilai: 0x02
Memulai pengalihan file CSV.
CsvControlStopRedirectFile
Nilai: 0x03
Menghentikan pengalihan file CSV.
CsvControlQueryRedirectState
Nilai: 0x04
Cari pengalihan status. Ketika nilai ini ditentukan, struktur CSV_QUERY_REDIRECT_STATE juga harus digunakan.
CsvControlQueryFileRevision
Nilai: 0x06
Cari revisi file. Ketika nilai ini ditentukan, struktur CSV_QUERY_FILE_REVISION juga harus digunakan.
CsvControlQueryMdsPath
Nilai: 0x08
Cari jalur MDS. Ketika nilai ini ditentukan, struktur CSV_QUERY_MDS_PATH juga harus digunakan.
CsvControlQueryFileRevisionFileId128
Nilai: 0x09
Cari revisi file 128-bit. Ketika nilai ini ditentukan, struktur CSV_QUERY_FILE_REVISION_FILE_ID_128 juga harus digunakan.
CsvControlQueryVolumeRedirectState
Nilai: 0x0a
Cari pengalihan status volume. Ketika nilai ini ditentukan, struktur CSV_QUERY_VOLUME_REDIRECT_STATE juga harus digunakan.
CsvControlEnableUSNRangeModificationTracking
Nilai: 0x0d
Aktifkan pelacakan rentang USN.
CsvControlMarkHandleLocalVolumeMount
Nilai: 0x0e
Ketika file VHD akan dipasang loopback, menandai handel dan meminta CVSFS gagal I/Os dan membatalkan handel setelah batas waktu singkat (saat ini 20 detik) jika tidak ada I/Os yang membuat kemajuan.
CsvControlUnmarkHandleLocalVolumeMount
Nilai: 0x0f
Ketika file VHD akan dilepas loopbacknya, batalkan tanda tangan yang sebelumnya ditandai oleh CsvControlMarkHandleLocalVolumeMount.
CsvControlGetCsvFsMdsPathV2
Nilai: 0x12
Cari jalur MDS versi 2. Ketika nilai ini ditentukan, struktur CSV_QUERY_MDS_PATH_V2 juga harus digunakan.
CsvControlDisableCaching
Nilai: 0x13
Menonaktifkan penembolokan file CSV.
CsvControlEnableCaching
Nilai: 0x14
Memungkinkan penembolokan file CSV.
CsvControlStartForceDFO
Nilai: 0x15
Memaksa CSVFS untuk mulai meneruskan I/O down-level pada objek file tingkat bawah (DFO). Lihat Keterangan untuk detailnya.
CsvControlStopForceDFO
Nilai: 0x16
Berhenti memaksa penerusan I/O CSVFS pada DFO. Lihat Keterangan untuk detailnya.
CsvControlQueryMdsPathNoPause
Nilai: 0x17
Mirip dengan CsvControlQueryMdsPath. Cari jalur MDS, tetapi jika volume CSV dijeda pada saat permintaan, atur MdsNodeId ke 0xFFFFFFFF alih-alih mengembalikan simpul koordinat terakhir. Ini memungkinkan klien untuk mendeteksi bahwa simpul koordinat mungkin berubah. Ketika CsvControlQueryMdsPathNoPause ditentukan, struktur CSV_QUERY_MDS_PATH juga harus digunakan.
CsvControlSetVolumeId
Nilai: 0x18
Atur GUID Volume CSV. Lihat Keterangan untuk detailnya.
CsvControlQueryVolumeId
Nilai: 0x19
Kueri apakah GUID Volume CSV tersedia. Lihat Keterangan untuk detailnya.

Keterangan

Alternatif untuk memanggil kode kontrol FSCTL_CSV_CONTROL dengan enumerasi ini adalah dengan menggunakan struktur CSV_CONTROL_PARAM , yang merangkum anggota jenis enumerasi ini.

CsvControlStartForceDFO dan CsvControlStopForceDFO

Ketika objek file dibuka di CSVFS, CSVFS terbuka pada sistem file tingkat bawah (NTFS atau REFS) objek file tingkat bawah (DFO) yang cocok dengan setiap pengguna yang terbuka. Objek file tersebut dibuka sebagai bagian dari aplikasi yang membuka file pada CSVFS dan ditutup ketika aplikasi menutup handel untuk objek file pada CSVFS. Secara internal CSVFS membuka objek file tambahan yang disebut objek file halaman (PFO) yang dibagikan di antara semua pembukaan file yang sama pada CSVFS. Secara default, CSVFS menggunakannya untuk banyak operasi, seperti berikut ini:

  • Negosiasi Oplock
  • Kunci rentang byte
  • Penerusan halaman I/O

Beberapa solusi pemfilteran mungkin menandai handel dengan cara khusus, dan kemudian mengharapkan bahwa semua baca dan tulis harus diteruskan ke tingkat bawah oleh CSVFS pada DFO yang cocok. Aplikasi dapat memaksa CSVFS untuk mulai meneruskan IO down-level di DFO dengan mengirim CsvControlStartForceDFO. Nantinya, aplikasi dapat menggunakan CsvControlStopForceDFO untuk kembali ke perilaku default. Menutup handel yang digunakan untuk mengirim CsvControlStartForceDFO akan secara implisit kembali seolah-olah aplikasi mengirim CsvControlStopForceDFO.

CsvControlSetVolumeId dan CsvControlQueryVolumeId

Kontrol ini memungkinkan minifilter sistem file yang dilampirkan ke sistem file tingkat bawah di bawah CSVFS untuk mempelajari GUID Volume CSV. Sumber Daya Disk Fisik Kluster mengatur GUID ini setelah sistem file tingkat bawah dipasang sehingga tidak tersedia jika filter terpasang selama pemasangan. Selama melampirkan filter, minifilter sistem file dapat mengeluarkan CsvControlQueryVolumeId untuk mengkueri apakah GUID sudah tersedia. Kontrol harus dikirim ke bagian atas tumpukan untuk memastikan csvflt menerimanya. Jika GUID volume belum tersedia, maka csvflt akan mengembalikan STATUS_UNSUCCESSFUL. Filter seharusnya tidak gagal dilampirkan jika GUID volume belum tersedia.

Pada titik selanjutnya, Sumber Daya Disk Fisik akan mengirim CsvControlSetVolumeId dengan GUID volume. Setiap filter pada tumpukan dapat menggunakan kontrol CsvControlSetVolumeId untuk menyimpan GUID volume. Filter tidak boleh menyelesaikan kontrol ini. Sebaliknya mereka harus mengizinkannya untuk turun ke tumpukan, memungkinkan filter lain kesempatan untuk menyimpan GUID.

Persyaratan

Persyaratan Nilai
Header ntifs.h

Lihat juga

Enumerasi Manajemen File

CSV_CONTROL_PARAM

CSV_QUERY_FILE_REVISION

CSV_QUERY_MDS_PATH

CSV_QUERY_REDIRECT_STATE

FSCTL_CSV_CONTROL