Bagikan melalui


IOCTL_MOUNTDEV_QUERY_DEVICE_NAME IOCTL (mountmgr.h)

Setelah menerima IOCTL ini, driver klien harus memberikan nama perangkat (atau target) (atau target) (nonpersisten) untuk volume. Manajer pemasangan menggunakan nama perangkat yang dikembalikan oleh klien sebagai target tautan simbolis. Contoh nama perangkat adalah "\Device\HarddiskVolume1".

Dukungan untuk IOCTL ini oleh klien manajer pemasangan adalah wajib.

Kode utama

IRP_MJ_DEVICE_CONTROL

Buffer input

Tidak ada.

Panjang buffer input

Tidak ada.

Buffer output

Klien manajer pemasangan mengembalikan struktur panjang variabel jenis MOUNTDEV_NAME di awal buffer di Irp-AssociatedIrp.SystemBuffer>. Nama perangkat harus dimasukkan ke alamat yang ditujukan oleh anggota Nama struktur ini.

Panjang buffer output

Parameters.DeviceIoControl.OutputBufferLength di lokasi tumpukan I/O IRP menunjukkan ukuran, dalam byte, dari buffer output, yang harus lebih besar dari atau sama dengan sizeof(MOUNTDEV_NAME).

Blok status

Bidang Informasi diatur ke FIELD_OFFSET(MOUNTDEV_NAME, Nama) + output-NameLength>, atau sebagai alternatif, output-NameLength> + sizeof(USHORT), di mana output menunjuk ke buffer di Irp-AssociatedIrp.SystemBuffer>.

Jika operasi berhasil, klien manajer pemasangan harus mengatur bidang Informasi ke panjang string yang dihentikan NULL yang berisi nama perangkat dan bidang Status ke STATUS_SUCCESS.

Jika buffer output terlalu kecil untuk menahan nama perangkat, klien manajer pemasangan harus mengatur bidang Informasi ke sizeof(MOUNTDEV_NAME) dan bidang Status ke STATUS_BUFFER_OVERFLOW. Selain itu, klien manajer pemasangan mengisi anggota NameLength dari struktur MOUNTDEV_NAME .

Keterangan

Sebagai praktik terbaik, pelaksana tidak boleh menyinkronkan utas dan tidak boleh melakukan pemblokiran dan/atau panggilan fungsi Interprocess Communication (IPC).

Untuk informasi selengkapnya, lihat Mendukung Permintaan Mount Manager di Driver Kelas Penyimpanan.

Persyaratan

Persyaratan Nilai
Header mountmgr.h (termasuk Mountmgr.h)

Lihat juga

MOUNTDEV_NAME