IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
#ifndef _NTIOAPI_H

#define IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION  CTL_CODE(MOUNTMGRCONTROLTYPE, 11, METHOD_BUFFERED, FILE_READ_ACCESS)

#endif

View code on GitHub
// mountmgr.h

// CTL_CODE(0x006d, 0x00b, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION 0x006D402C
View the official Windows Driver Kit DDI reference

NtDoc

This IOCTL is documented in Windows Driver Kit.

Windows Driver Kit DDI reference (ni-mountmgr-ioctl_mountmgr_volume_arrival_notification)

Description

This IOCTL allows a client to simulate a Plug and Play device interface arrival notification with the given volume name. If a client does not register a device interface of type MOUNTDEV_MOUNTED_DEVICE_GUID, the mount manager is not alerted of its arrival. However, the client can alert the mount manager of its volume's arrival directly by means of this IOCTL.

This IOCTL allows clients to obtain drive letters for newly created volumes during text mode setup when the Plug and Play device installer is not running.

Clients that have registered a device interface of type MOUNTDEV_MOUNTED_DEVICE_GUID in the normal way should not use this IOCTL.

Parameters

Major code

IRP_MJ_DEVICE_CONTROL

Input buffer

The mount manager client loads the following structure with the nonpersistent target device name. The initialized structure, MOUNTMGR_TARGET_NAME is inserted at the beginning of the buffer at Irp->AssociatedIrp.SystemBuffer.

Input buffer length

Parameters.DeviceIoControl.InputBufferLength in the I/O stack location of the IRP indicates the size, in bytes, of the input buffer, which must be greater than or equal to sizeof(MOUNTMGR_TARGET_NAME).

Output buffer

None.

Output buffer length

None.

Input/output buffer

N/A

Input/output buffer length

N/A

Status block

If the operation is successful, the Status field is set to STATUS_SUCCESS.

The input buffer size, indicated by InputBufferLength, must be large enough to hold the structure MOUNTMGR_TARGET_NAME and the symbolic link name that follows it. If it is not large enough, the Status field is set to STATUS_INVALID_PARAMETER.

Remarks

For more information, see Supporting Mount Manager Requests in a Storage Class Driver.

See also

MOUNTMGR_TARGET_NAME