共用方式為


OID_SWITCH_NIC_RESTORE

Hyper-V 可延伸交換器的通訊協定邊緣會發出物件識別碼, (OID) 設定OID_SWITCH_NIC_RESTORE要求,以通知可延伸交換器延伸模組有關可針對可延伸交換器埠及其網路介面卡線上還原的執行時間資料。

NDIS_OID_REQUEST結構的InformationBuffer成員包含NDIS_SWITCH_NIC_SAVE_STATE結構的指標。 此結構是由可延伸交換器的通訊協定邊緣所配置。

備註

當它收到OID_SWITCH_NIC_RESTORE的 OID 集合要求時,可延伸交換器擴充功能必須先判斷它是否擁有執行時間資料。 擴充功能會比較NDIS_SWITCH_NIC_SAVE_STATE結構之ExtensionId成員的值,與延伸模組用來識別本身的 GUID 值來進行這項作業。

如果延伸模組擁有可延伸交換器埠的執行時間資料,它會以下列方式還原此資料:

  1. 擴充功能會將 SaveData 成員中的執行時間資料複製到延伸模組配置的儲存體。

    注意NDIS_SWITCH_NIC_SAVE_STATE結構的PortId成員值可能與儲存執行時間資料時的PortId值不同。 如果在從一部主機即時移轉至另一部主機期間儲存了執行時間資料,就會發生這種情況。 不過,即時移轉期間會保留可延伸交換器埠的組態。 這可讓擴充功能使用新的 PortId 值,將執行時間資料還原至可延伸交換器埠。

  2. 擴充功能會以 NDIS_STATUS_SUCCESS 完成 OID 集合要求。

如果擴充功能沒有擁有指定的執行時間資料,擴充功能會呼叫 NdisFOidRequest ,將此 OID 集合要求轉送至可延伸交換器驅動程式堆疊中的基礎延伸模組。 在此情況下,延伸模組不得修改與 OID 要求相關聯的 NDIS_SWITCH_NIC_SAVE_STATE 結構。

如果可延伸交換器的迷你埠邊緣收到OID_SWITCH_NIC_RESTORE集要求,則會使用 NDIS_STATUS_SUCCESS 完成 OID 要求。 這會通知可延伸交換器的通訊協定邊緣,沒有延伸模組擁有執行時間資料。

如需如何還原執行時間資料的詳細資訊,請參閱 還原 Hyper-V 可延伸交換器Run-Time資料

注意 如果擴充功能失敗 OID 集合要求,可延伸交換器將會失敗整個還原作業。 因此,如果可能的話,擴充功能應該避免 OID 要求失敗。 例如,如果延伸模組無法配置還原執行時間資料所需的資源,如果 OID 要求無法正常運作,則它應該會在不還原執行時間資料的情況下正常運作時失敗。 不過,如果擴充功能可以從失敗狀況中復原,則不應該使 OID 集合要求失敗。

傳回狀態碼

如果擴充功能完成OID_SWITCH_NIC_RESTORE的 OID 集合要求,則會傳回下列其中一個狀態碼。

狀態碼 描述

NDIS_STATUS_SUCCESS

OID 要求已順利完成。

NDIS_STATUS_Xxx

要求因其他原因而失敗。

規格需求

版本

NDIS 6.30 和更新版本支援。

標頭

Ntddndis.h (包含 Ndis.h)

另請參閱


NDIS_OID_REQUEST

NDIS_SWITCH_NIC_SAVE_STATE

NdisFOidRequest