Hyper-V 可延伸交換器擴充功能會發出OID_SWITCH_PORT_ARRAY的對象標識碼 (OID) 查詢要求,以取得數位。 陣列中的每個元素都會指定可延伸交換器埠的組態參數。
如果 OID 查詢要求成功完成,InformationBufferNDIS_OID_REQUEST 結構的成員包含緩衝區的指標。 此緩衝區包含下列資料:
定義陣列內元素數目的 NDIS_SWITCH_PORT_ARRAY 結構。
NDIS_SWITCH_PORT_PARAMETERS 結構的陣列。 每個結構都包含可延伸交換器上埠的相關信息。
注意 如果未在可延伸交換器上建立任何埠,驅動程式會將 NDIS_SWITCH_PORT_ARRAY 結構 NumElements 成員設定為零,而且不會傳回任何 NDIS_SWITCH_PORT_PARAMETERS 結構。
言論
OID_SWITCH_PORT_ARRAY OID 只有在 Hyper-V 可延伸交換器完成啟用時才會發出。 如需詳細資訊,請參閱 查詢 Hyper-V 可延伸交換器組態。
當延伸模塊處理傳回的 NDIS_SWITCH_PORT_PARAMETERS 結構時,它不得假設 NDIS_SWITCH_PORT_PARAMETERS 結構的各種字串成員,例如 PortName,都會以 null 終止。 這些字串成員的數據類型是由 IF_COUNTED_STRING 結構所定義。 驅動程式必須從這個 結構的 Length 成員的值判斷字串長度。
注意 如果字串為 null 終止,則 Length 成員不得包含終止的 null 字元。
傳回狀態代碼
可延伸交換器的基礎迷你埠邊緣會完成OID_SWITCH_PORT_ARRAY的 OID 查詢要求,並傳回下列其中一個狀態代碼。
| 狀態代碼 | 描述 |
|---|---|
NDIS_STATUS_SUCCESS |
OID 要求已順利完成。 |
NDIS_STATUS_INVALID_LENGTH |
信息緩衝區的長度太小,無法傳回 NDIS_SWITCH_PORT_ARRAY 及其 NDIS_SWITCH_PORT_PARAMETERS 項目的陣列。 可延伸交換器的基礎迷你埠邊緣會設定 DATA。QUERY_INFORMATION。BytesNeededNDIS_OID_REQUEST 結構中的成員,以所需的緩衝區大小下限。 |
NDIS_STATUS_FAILURE |
要求因其他原因而失敗。 |
要求
版本 |
NDIS 6.30 和更新版本支援。 |
頁眉 |
Ntddndis.h (包括 Ndis.h) |