IRP_MJ_SET_VOLUME_INFORMATION

Ketika Dikirim

Permintaan IRP_MJ_SET_VOLUME_INFORMATION dikirim oleh Manajer I/O. Ini dapat dikirim, misalnya, ketika aplikasi mode pengguna telah memanggil fungsi Microsoft Win32 seperti SetVolumeLabel.

Operasi: Driver Sistem File

Driver sistem file harus mengekstrak dan mendekode objek file untuk menentukan apakah mewakili volume pengguna terbuka. Jika ya, driver sistem file harus mengatur informasi volume yang sesuai dan menyelesaikan IRP. Jika tidak, sistem file harus menyelesaikan IRP sebagaimana mestinya tanpa mengatur informasi volume.

Jenis informasi volume yang dapat diatur bergantung pada sistem file, tetapi umumnya menyertakan satu atau beberapa hal berikut:

FileFsControlInformation

FileFsLabelInformation

FileFsObjectIdInformation

Untuk daftar semua jenis informasi yang mungkin, lihat enumerasi FS_INFORMATION_CLASS di ntifs.h.

Operasi: Driver Filter Sistem File

Driver filter harus meneruskan IRP ini ke driver berikutnya yang lebih rendah pada tumpukan.

Parameter

Sistem file atau driver filter memanggil IoGetCurrentIrpStackLocation dengan IRP yang diberikan untuk mendapatkan penunjuk ke lokasi tumpukannya sendiri di IRP, yang diperlihatkan dalam daftar berikut sebagai IrpSp. (IRP ditampilkan sebagai Irp.) Driver dapat menggunakan informasi yang diatur dalam anggota IRP berikut dan lokasi tumpukan IRP dalam memproses permintaan informasi volume yang ditetapkan:

DeviceObject
Arahkan ke objek perangkat target.

Irp-AssociatedIrp.SystemBuffer>
Penunjuk ke buffer input yang berisi nilai informasi volume yang akan diatur. Informasi ini disimpan dalam salah satu struktur berikut:

FILE_FS_CONTROL_INFORMATION

FILE_FS_LABEL_INFORMATION

FILE_FS_OBJECTID_INFORMATION

Irp-> IoStatus Pointer ke struktur IO_STATUS_BLOCK yang menerima status penyelesaian akhir dan informasi tentang operasi yang diminta.

IrpSp-> Penunjuk FileObject ke objek file yang terkait dengan DeviceObject.

Parameter IrpSp-FileObject> berisi penunjuk ke bidang RelatedFileObject, yang juga merupakan struktur FILE_OBJECT. Bidang RelatedFileObject dari struktur FILE_OBJECT tidak valid selama pemrosesan IRP_MJ_SET_VOLUME_INFORMATION dan tidak boleh digunakan.

IrpSp-> MajorFunction Menentukan IRP_MJ_SET_VOLUME_INFORMATION.

IrpSp-> Parameters.SetVolume.FsInformationClass Menentukan jenis informasi yang akan diatur untuk volume. Nilai ini bisa menjadi salah satu dari berikut ini:

Nilai Makna

FileFsControlInformation

Atur FILE_FS_CONTROL_INFORMATION untuk volume.

FileFsLabelInformation

Atur FILE_FS_LABEL_INFORMATION untuk volume.

FileFsObjectIdInformation

Atur FILE_FS_OBJECTID_INFORMATION untuk volume.

IrpSp-> Parameters.SetVolume.Length Length, dalam byte, dari buffer yang diacu oleh Irp-AssociatedIrp.SystemBuffer>.

Lihat juga

FILE_FS_CONTROL_INFORMATION

FILE_FS_LABEL_INFORMATION

FILE_FS_OBJECTID_INFORMATION

IO_STACK_LOCATION

IO_STATUS_BLOCK

IoGetCurrentIrpStackLocation

IRP

IRP_MJ_QUERY_VOLUME_INFORMATION

ZwQueryVolumeInformationFile

ZwSetVolumeInformationFile