ENUMERATE_BANDS_PARAMETERS 結構 (ehstorbandmgmt.h)
ENUMERATE_BANDS_PARAMETERS結構可用來選取要從IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS要求傳回的帶狀信息專案。
語法
typedef struct _ENUMERATE_BANDS_PARAMETERS {
ULONG StructSize;
ULONG Flags;
ULONG Reserved;
ULONG BandId;
LARGE_INTEGER BandStart;
LARGE_INTEGER BandSize;
} ENUMERATE_BANDS_PARAMETERS, *PENUMERATE_BANDS_PARAMETERS;
成員
StructSize
這個 結構的大小,以位元組為單位。 設定為 sizeof (ENUMERATE_BANDS_PARAMETERS) 。
Flags
帶狀列舉旗標。 這個值是下列的位 OR 組合。
值 | 意義 |
---|---|
|
會傳回所有帶狀。 設定此旗標時,會忽略 BandId、BandStart 和 BandSize 成員。 |
|
在 BAND_TABLE_ENTRY 的 SecurityInfo 成員中包含媒體加密演演算法資訊。 |
Reserved
保留的。
BandId
要傳回資訊之單一帶的標識碼。 使用 BandId 選取單一訊號範圍時,BandSize 必須為 0。若要使用 BandStart 和 BandSize 而非 BandId 來選取帶狀,請將 BandId = (ULONG) –1。
BandStart
存儲設備上的起始位元組位置,以開始進行訊號範圍搜尋。 嘗試比對 BandStart 或之後的帶狀。
BandSize
選擇性的帶狀大小比對值,以位元組為單位。 如果 BandSize == 0 和 BandId == –1, 則 BandStart 是選取帶狀區的唯一相符值。 否則,會選取 BandStart 或之後的帶狀區,並完全選取相符 的 BandSize 。
備註
在 Flags 中未設定ENUMBANDS_ENUM_ALL_BANDS時,會嘗試比對單一帶。 單一帶比對是根據 BandID、BandStart 和 BandSize 中的值進行。 優先順序會指定給 BandID 進行帶狀選取。 如果的 BandID> 0 和 BandID<MaxBandCount 成員BAND_MANAGEMENT_CAPABILITIES 如果 BandID 大於 0,且 BandID 小於 BAND_MANAGEMENT_CAPABILITIES的 MaxBandCount 成員,則 BandID 會當做帶比對的唯一選取準則使用。 如果 BandID == –1, 則 BandStart 和 BandSize 會作為比對準則來選取帶狀。
當 BandStart 和 BandSize 用來比對訊號時,會傳回 在 BandStart 位置上或之後設定的第一個帶狀區,其大小為 BandSize 。 如果 BandSize == 0,當 BandStart 有效時,則會傳回 在 BandStart 或之後 設定的第一個頻段。
如果 已設定 BandID == 0 或未設定任何訊號,且 Flags 未設定為 ENUMBANDS_ENUM_ALL_BANDS,則會傳回整個裝置的全域訊號。
BandStart 和 BandSize 無效,除非其值以位元組為單位,是基礎儲存裝置扇區大小的確切倍數。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 8 開始提供 |
標頭 | ehstorbandmgmt.h (包含 EhStorBandMgmt.h) |