IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS IOCTL (ntddvol.h)
傳回一或多個磁碟上磁碟區 () 實體位置。 範圍一開始會依建立的順序儲存,但在災害復原期間重新鏡像、分割或中斷鏡像或動作,可能會影響磁碟範圍的順序。
主要程序代碼
輸入緩衝區
無。
輸入緩衝區長度
無。
輸出緩衝區
驅動程式會在 Irp-AssociatedIrp.SystemBuffer> 的緩衝區中傳回VOLUME_DISK_EXTENTS結構,其大小必須至少為 (VOLUME_DISK_EXTENTS) 。
輸出緩衝區長度
VOLUME_DISK_EXTENTS 結構的長度。
狀態區塊
驅動程式會設定 Irp-IoStatus.Information> 和 [狀態] 欄位,如下所示:
- 如果 Irp->AssociatedIrp.SystemBuffer 的< 緩衝區是 sizeof (VOLUME_DISK_EXTENTS) ,驅動程式會將 Irp->IoStatus.Information 設定為零,並傳回STATUS_INVALID_PARAMETER。
- 如果 Irp->AssociatedIrp.SystemBuffer 的緩衝區至少 為 sizeof (VOLUME_DISK_EXTENTS) 但無法傳回所有數據,驅動程式會將 Irp->IoStatus.Information 設定為 sizeof (VOLUME_DISK_EXTENTS) ,並將 Status 設定為 STATUS_BUFFER_OVERFLOW。
- 如果 Irp->AssociatedIrp.SystemBuffer 上的緩衝區足以傳回所有數據,驅動程式會將 Irp->IoStatus.Information 設定為 sizeof (VOLUME_DISK_EXTENTS) + ( (NumberOfDiskExtents - 1) * sizeof (DISK_EXTENT) ) ,並將 Status 設定為 STATUS_SUCCESS。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Microsoft Windows 2000 適用於固定磁碟上的磁碟區,但不適用於抽取式媒體上的磁碟區。 可用於 Microsoft Windows 2000 SP4 和 Windows XP SP1 中的抽取式媒體。 |
標頭 | ntddvol.h (包含 Ntddvol.h) |