IOCTL_STORAGE_REINITIALIZE_MEDIA IOCTL (ntddstor.h)
ドライバーは、IOCTL_STORAGE_REINITIALIZE_MEDIA 制御コードを発行して、消去プロセスをストレージ デバイスにオフロードできます。
メジャー コード
入力バッファー
Windows Server 2022 以降の場合、サニタイズ オプションを持つ省略可能な STORAGE_REINITIALIZE_MEDIA 構造体 (NULL) が含まれています。 以前のバージョンの OS では、入力バッファーは NULL です。
入力バッファーの長さ
Windows 10 リリース 21H1 以降の場合、Parameters.DeviceIoControl.InputBufferLength は、パラメーター バッファーのサイズ (バイト単位) を示します(Irp->AssociatedIrp.SystemBuffer)。 Parameters.DeviceIoControl.InputBuffer != NULL の場合は、>= sizeof(STORAGE_REINITIALIZE_MEDIA) である必要があります。それ以外の場合は 0。 以前のバージョンの OS では、入力バッファーの長さは 0 です。
出力バッファー
何一つ。
出力バッファーの長さ
何一つ。
入力/出力バッファー
n/a
入力/出力バッファーの長さ
n/a
状態ブロック
呼び出しが正常に完了した場合、情報 フィールドは 0 に設定されます。それ以外の場合は、0 以外の値に設定されます。
備考
IOCTL_STORAGE_REINITIALIZE_MEDIA は、消去をストレージ デバイスにオフロードします。 コマンドの完了後に、ストレージ デバイスのデータが正常に削除または回復できる保証はありません。
この IOCTL は、デスクトップ デバイス ファミリ内のデバイス上のデータ ディスクに制限されます。 Windows プレインストール環境 (WinPE) では、この IOCTL はブート ディスクとデータ ディスクの両方でサポートされています。
以前のバージョンの OS では、実装には入力は必要なく、状態以外の出力は返されません。
呼び出し元は、この IOCTL を呼び出して上位レイヤーのキャッシュされたデータをフラッシュする前に、最初に FSCTL_LOCK_VOLUME を呼び出す必要があります。 未処理の要求完了の待機は、デバイスにコマンドを発行する前に行われません。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 10 バージョン 1607 |
サポートされる最小サーバー | Windows Server 2016 |
ヘッダー | ntddstor.h |
関連項目
ディスパッチ ルーチン で IRP を完了する方法