次の方法で共有


IOCTL_STORAGE_REINITIALIZE_MEDIA IOCTL (ntddstor.h)

ドライバーは、IOCTL_STORAGE_REINITIALIZE_MEDIA 制御コードを発行して、消去プロセスをストレージ デバイスにオフロードできます。

メジャー コード

IRP_MJ_DEVICE_CONTROL

入力バッファー

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

関連項目

IO_STATUS_BLOCK 構造体の

STORAGE_REINITIALIZE_MEDIA

ディスパッチ ルーチン で IRP を完了する方法