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。

輸出緩衝區

無。

輸出緩衝區長度

無。

狀態區塊

[ 資訊] 欄位設定為零。 如果作業成功,[ 狀態 ] 字段會設定為STATUS_SUCCESS。 其他可能的狀態值為:如果不支援所要求的分割區樣式,STATUS_NOT_SUPPORTED;如果類別驅動程式無法擷取磁碟幾何,STATUS_DEVICE_NOT_READY;和 STATUS_INSUFFICIENT_RESOURCES如果類別驅動程式無法取得必要的資源,例如堆積記憶體。

規格需求

需求
標頭 ntdddisk.h (包含 Ntdddisk.h)

另請參閱

CREATE_DISK