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 は停止します (アプリケーションまたはドライバーがボリュームへのハンドルを開いた場合)。
メジャー コード
[入力バッファー]
[なし] :
入力バッファーの長さ
[なし] :
出力バッファー
[なし] :
出力バッファーの長さ
[なし] :
ステータス ブロック
Status メンバーは STATUS_SUCCESS に設定されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP 以降で使用できます。 |
Header | ntddvol.h (Ntddvol.h を含む) |