IOCTL_EHSTOR_BANDMGMT_DELETE_BAND IOCTL (ehstorbandmgmt.h)

儲存裝置上設定的訊號會隨著 IOCTL_EHSTOR_BANDMGMT_DELETE_BAND 要求一起刪除。 輸入參數中的 erase 選項可讓要求執行帶狀數據的密碼編譯清除。

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

Irp-AssociatedIrp.SystemBuffer> 的輸入緩衝區必須包含DELETE_BAND_PARAMETERS,而且可能是AUTH_KEY結構。

如果DELETE_BAND_PARAMETERSAuthKeyOffset 成員設定為EHSTOR_BANDMGR_NO_KEY,則系統緩衝區中的輸入數據不需要包含AUTH_KEY結構。

輸入緩衝區長度

Parameters.DeviceIoControl.InputBufferLength 指出緩衝區的大小,以位元組為單位,緩衝區的大小必須至少為 sizeof (DELETE_BAND_PARAMETERS) + sizeof (AUTH_KEY) 。

輸出緩衝區

無。

輸出緩衝區長度

無。

狀態區塊

下列其中一個值可以在 [ 狀態 ] 字段中傳回。

狀態值 Description
STATUS_SUCCESS 已成功刪除帶狀。
STATUS_INVALID_DEVICE_REQUEST 儲存裝置不支援訊號範圍管理。
STATUS_INVALID_BUFFER_SIZE 輸入緩衝區大小不正確。
STATUS_INVALID_PARAMETER 輸入緩衝區中的資訊無效。
STATUS_ACCESS_DENIED 驗證金鑰無效,或已鎖定訊號範圍以供寫入。
STATUS_NOT_FOUND 找不到所提供選取準則的帶狀。
STATUS_IO_DEVICE_ERROR 通訊失敗。 存儲設備可能與安全性通訊協定不相容。

備註

需要驗證金鑰才能刪除訊號範圍,而不先執行清除。 若要要求帶清除,DELBAND_ERASE_BEFORE_DELETE旗標是在 DELETE_BAND_PARAMETERSFlags 成員中設定。

刪除頻外之後,已刪除的帶狀範圍中包含的所有 LBA 都會傳回至全域範圍。 全域帶的鎖定條件現在適用於傳回至全域訊號範圍的 LBA。 傳回至全域波段的 LBA 現在與全域訊號的媒體密鑰相關聯,而且無法復原這些 LBA 中的加密數據。

已刪除的訊號範圍會保留在尋址接收器驅動程序的頻帶數據表中,但會變成未設定。 驗證金鑰會重設為預設值、帶狀和金鑰元數據包含零,而鎖定狀態會還原為 PERSISTENT_UNLOCK。 現在可以使用 IOCTL_EHSTOR_BANDMGMT_CREATE_BAND 要求重新設定訊號。

刪除沒有密碼編譯清除的帶狀區,將不會移除該訊號範圍的加密密鑰。 稍後可以建立與已刪除的帶狀區相同的組態和訊號範圍標識符。 在此情況下,先前儲存在訊號範圍中的數據不會遭到覆寫,因為會提供刪除先前的帶狀區。 若要避免這種情況,請刪除DELETE_BAND_PARAMETERS中設定DELBAND_ERASE_BEFORE_DELETE旗標的帶狀區。

IOCTL_EHSTOR_BANDMGMT_DELETE_BAND不會刪除全域範圍。 執行此動作的要求會傳回 STATUS_INVALID_PARAMETER

規格需求

需求
最低支援的用戶端 從 Windows 8 開始提供。
標頭 ehstorbandmgmt.h (包含 EhStorBandMgmt.h)

另請參閱

DELETE_BAND_PARAMETERS

IOCTL_EHSTOR_BANDMGMT_CREATE_BAND

IOCTL_EHSTOR_BANDMGMT_ERASE_BAND