IOCTL_DISK_CREATE_DISK IOCTL (ntdddisk.h)

デバイス オブジェクトの空のパーティションを作成します。 EFI ディスクまたは MBR ディスクで動作できます。 空のディスクを作成するために必要なパラメーターは、ディスクに配置されるパーティション テーブルの種類によって異なります。 詳細については、「 CREATE_DISK」を参照してください。

ディスク ドライバーは、子デバイスであるかのようにパーティションを列挙します。 したがって、新しいパーティションを作成すると、ディスク クラス ドライバーは 、IoInvalidateDeviceRelations への呼び出しによって、ディスク デバイスに新しい子デバイス (パーティション) があることを PnP マネージャーに通知します。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

Irp-AssociatedIrp.SystemBuffer の>バッファーには、CREATE_DISK データが含まれています。

入力バッファーの長さ

IRP の I/O スタック位置の Parameters.DeviceIoControl.InputBufferLength は、ドライバーが使用できるバッファーのサイズ (バイト単位) を示します。これは、>= sizeof(CREATE_DISK) である必要があります。 それ以外の場合、ドライバーは STATUS_INFO_LENGTH_MISMATCH のエラー状態で を返します。

出力バッファー

[なし] :

出力バッファーの長さ

[なし] :

ステータス ブロック

[情報] フィールドは 0 に設定されます。 [状態] フィールドは、操作が成功した場合にSTATUS_SUCCESSに設定されます。 その他の使用可能な状態値は次のとおりです。要求されたパーティション スタイルがサポートされていない場合は、STATUS_NOT_SUPPORTED。クラス ドライバーがディスク ジオメトリを取得できなかった場合にSTATUS_DEVICE_NOT_READYします。クラス ドライバーがヒープ メモリなどの必要なリソースを取得できなかった場合にSTATUS_INSUFFICIENT_RESOURCESします。

要件

要件
Header ntdddisk.h (Ntdddisk.h を含む)

こちらもご覧ください

CREATE_DISK