次の方法で共有


IOCTL_VOLUME_OFFLINE IOCTL (ntddvol.h)

IOCTL_VOLUME_OFFLINE IOCTL は、ボリュームを OFFLINE 状態にします。これは、読み取り操作と書き込み操作が失敗する状態です。 後続の IOCTL_VOLUME_ONLINE が受信されるまで、要求は物理ディスクに渡されません。

IOCTL_VOLUME_OFFLINEの一般的な用途は、ボリュームが最初のアプリケーションまたはドライバーによって削除されている間に、1 つのアプリケーションまたはドライバーが 2 番目のアプリケーションまたはドライバーからボリュームを開く呼び出しによってボリュームが再マウントされないようにする場合です。 たとえば、論理ユニット番号 (LUN) をマスクする前に、LUN のボリュームをロック (省略可能)、マウント解除、オフライン、アンインストールする必要があります。 ボリュームとディスク自体のプラグ アンド プレイ (PnP) の突然の削除イベントをログに記録することなく、LUN をマスクできるようになりました。 ボリュームをオフラインにする呼び出しがない場合、マウント解除に使用されるハンドルが閉じられた後、ボリュームを呼び出しによって再マウントし、ボリュームをアンインストールする呼び出しの前に発生した場合は、別のアプリケーションまたはドライバーから開くことができます。 ボリュームを開く呼び出しはオフライン ボリュームで成功しますが、オフライン ボリュームに向けられた I/O は失敗します。 ボリュームをオフラインにしても、ディスク I/O には影響しません (アプリケーションまたはドライバーがディスクへのハンドルを開いた場合)、ボリューム I/O は停止します (アプリケーションまたはドライバーがボリュームへのハンドルを開いた場合)。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

[なし] :

入力バッファーの長さ

[なし] :

出力バッファー

[なし] :

出力バッファーの長さ

[なし] :

ステータス ブロック

Status メンバーは STATUS_SUCCESS に設定されます。

要件

要件
サポートされている最小のクライアント Windows XP 以降で使用できます。
Header ntddvol.h (Ntddvol.h を含む)

こちらもご覧ください

IOCTL_VOLUME_ONLINE