Bagikan melalui


IRP_MJ_SET_QUOTA (FS dan driver filter)

Ketika Dikirim

Manajer I/O mengirimkan permintaan IRP_MJ_SET_QUOTA. Ini dapat dikirim, misalnya, ketika aplikasi mode pengguna telah memanggil metode Win32 seperti IDiskQuotaControl::SetQuotaState.

Operasi: Driver Sistem File

IRP_MJ_SET_QUOTA dan IRP_MJ_QUERY_QUOTA ada di Windows NT 4.0 tetapi tidak digunakan oleh sistem file. Pada sistem Windows 2000 dan yang lebih baru, mereka digunakan untuk dukungan kuota disk di NTFS. Dukungan untuk IRP ini oleh sistem file baru bersifat opsional.

Operasi: Driver Filter Sistem File Warisan

Driver filter harus meneruskan IRP ini ke driver berikutnya yang lebih rendah pada tumpukan, kecuali jika perlu secara eksplisit mengambil alih perilaku kuota.

Parameter

Sistem file atau driver filter memanggil IoGetCurrentIrpStackLocation untuk IRP yang diberikan untuk mendapatkan penunjuk ke lokasi tumpukannya sendiri di IRP. Dalam parameter berikut, Irp menunjuk ke IRP dan IrpSp menunjuk ke IO_STACK_LOCATION. Driver dapat menggunakan informasi yang diatur dalam anggota IRP berikut dan lokasi tumpukan IRP untuk memproses permintaan informasi kuota yang ditetapkan:

  • DeviceObject adalah penunjuk ke objek perangkat target.

  • DeviceObject->Bendera : Jika bendera DO_BUFFERED_IO diatur, pemanggil telah meminta METHOD_BUFFERED I/O. Jika tidak, pemanggil telah meminta I/O METHOD_NEITHER.

  • Irp->AssociatedIrp.SystemBuffer menunjuk ke buffer yang disediakan sistem untuk digunakan sebagai buffer sistem perantara, jika bendera DO_BUFFERED_IO diatur di DeviceObject-Flags>. Jika tidak, anggota ini diatur ke NULL.

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

  • Irp->UserBuffer menunjuk ke buffer yang disediakan penelepon yang berisi entri kuota yang akan ditambahkan atau dimodifikasi untuk volume.

  • IrpSp->FileObject menunjuk 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_QUOTA dan tidak boleh digunakan.

  • IrpSp->MajorFunction diatur ke IRP_MJ_SET_QUOTA.

  • IrpSp->Parameters.SetQuota.Length adalah panjang, dalam byte, dari buffer yang diacu oleh Irp-UserBuffer>.

Lihat juga

FILE_QUOTA_INFORMATION

IO_STACK_LOCATION

IO_STATUS_BLOCK

IoCheckQuotaBufferValidity

IoGetCurrentIrpStackLocation

IRP

IRP_MJ_QUERY_QUOTA