IOCTL_STORAGE_MCN_CONTROL IOCTL (ntddstor.h)
リムーバブル メディア デバイス上のカスタム PnP イベントGUID_IO_MEDIA_ARRIVALおよびGUID_IO_MEDIA_REMOVALの配信を一時的に有効または無効にします。 これにより、呼び出し元がFILE_READ_ATTRIBUTESアクセスでデバイスを開いた場合、およびデバイスがレジストリで自動再生が有効になっている場合、デバイスのメディア変更検出 (自動再生) が有効または無効になります。 呼び出し元は、読み取りまたは書き込みアクセスのためにデバイスを開かないようにするか、IOCTL 操作が失敗します。 この IOCTL は、レジストリの自動再生設定には影響しません。
このようなリムーバブル メディア デバイスのドライバーは、次の操作を行う必要があります。
- デバイス オブジェクト拡張機能では、物理デバイスごとに無効な要求の数を保持します。
- この IOCTL で呼び出されると、メディア変更検出を無効にするフラグが設定されている場合は、カウントをインクリメントします。フラグがクリアされている場合は、カウントをデクリメントします。
- 無効化要求数が 0 の場合にのみ、メディアの状態が変更された場合にデバイスのメディア変更イベントを設定します。
メジャー コード
[入力バッファー]
Irp-AssociatedIrp.SystemBuffer> のバッファーにはブール値が含まれています。TRUE は、ドライバーがメディア変更検出を無効にする必要があることを示します。
入力バッファーの長さ
ブール値の長さ。
出力バッファー
[なし] :
出力バッファーの長さ
[なし] :
ステータス ブロック
[情報] フィールドは 0 に設定されます。 [状態] フィールドはSTATUS_SUCCESSに設定されているか、場合によってはSTATUS_BUFFER_TOO_SMALL、STATUS_INVALID_PARAMETER、またはSTATUS_INVALID_DEVICE_STATEに設定されます。
要件
要件 | 値 |
---|---|
Header | ntddstor.h (Ntddstor.h を含む) |