IOCTL_MOUNTDEV_QUERY_UNIQUE_ID IOCTL (mountdev.h)
IOCTL_MOUNTDEV_QUERY_UNIQUE_ID デバイスまたはボリュームの一意の識別子を取得します。
マウント マネージャー クライアントは、この IOCTL をサポートする必要があります。 この IOCTL を受信すると、マウント マネージャー クライアントは、クライアント (つまり、デバイスまたはボリューム) に固有のカウントバイト文字列識別子を提供する必要があります。
メジャー コード
入力バッファー
何一つ。
入力バッファーの長さ
何一つ。
出力バッファー
デバイス クラスまたはボリューム ドライバーは、バッファー内の MOUNTDEV_UNIQUE_ID 構造体 Irp->AssociatedIrp.SystemBufferを返します。
出力バッファーの長さ
IRP の I/O スタック位置の Parameters.DeviceIoControl.OutputBufferLength は、出力バッファーのサイズ (バイト単位) を示します。これは、sizeof(MOUNTDEV_UNIQUE_ID)
以上である必要があります。
入力/出力バッファー
N/A
入力/出力バッファーの長さ
N/A
状態ブロック
情報 フィールドは、FIELD_OFFSET(MOUNTDEV_UNIQUE_ID, UniqueId) + output->UniqueIdLength に設定されます。または、sizeof(USHORT) + output->UniqueIdLength を指定します。出力は、Irp->AssociatedIrp.SystemBuffer バッファーを指します。
備考
この関数の実装者はスレッド同期を行ってはならないし、ブロックやプロセス間通信 (IPC) 関数呼び出しを行ってはなりません。
詳細については、「記憶域クラス ドライバー でのマウント マネージャー要求のサポート」を参照してください。
必要条件
要件 | 価値 |
---|---|
ヘッダー | mountdev.h (Mountdev.h を含む) |