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) ;否則為>零。 對於舊版OS,輸入緩衝區長度為零。
輸出緩衝區
無。
輸出緩衝區長度
無。
輸入/輸出緩衝區
n/a
輸入/輸出緩衝區長度
n/a
狀態區塊
如果呼叫成功完成,[ 資訊 ] 字段會設定為零;否則,它會設定為非零值。
備註
IOCTL_STORAGE_REINITIALIZE_MEDIA 將清除卸除至存儲設備。 在命令完成之後,無法保證記憶體裝置數據成功刪除或復原。
此 IOCTL 僅限於桌面裝置系列中裝置上的數據磁碟。 在 Windows 預安裝環境中 (WinPE) ,開機和數據磁碟都支援此 IOCTL。
在舊版OS中,實作不需要任何輸入,而且不會傳回狀態以外的輸出。
呼叫端應該先呼叫 FSCTL_LOCK_VOLUME ,再呼叫此 IOCTL,以清除上層快取的數據。 在發出命令給裝置之前,不會等待未完成的要求完成。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 10 (版本 1607) |
最低支援的伺服器 | Windows Server 2016 |
標頭 | ntddstor.h |