自訂埠功能狀態
Hyper-V 平臺和 Hyper-V 可延伸交換器介面提供基礎結構,以取得可延伸交換器埠的自訂狀態資訊。 這項資訊稱為 埠功能狀態 資訊。
Hyper-V 可延伸交換器埠屬性的自訂功能狀態定義會使用 Managed 物件格式向 WMI 管理層註冊, (MOF) 類別定義。 除了定義自訂埠功能狀態定義的屬性的結構成員之外,MOF 類別也必須包含下列專案:
唯一識別自訂埠功能狀態定義的 UUID。
可唯一識別可延伸交換器擴充功能的 GUID。 這個 GUID 會宣告為 MOF 類別的 ExtensionId 限定詞,而且必須符合擴充功能 INF 檔案中宣告的 NetCfgInstanceId 專案值。
描述性類別名稱字串。 廠商的名稱必須包含在字串中。
以下顯示可延伸交換器埠之自訂功能狀態定義的 MOF 類別範例。
#pragma namespace("\\\\.\\root\\virtualization\\v2")
[ Dynamic,
UUID("DAA0B7CC-74DB-41ef-8354-7002F9FA463E"),
ExtensionId("5CBF81BE-5055-47CD-9055-A76B2B4E369E"),
Provider("VmmsWmiInstanceAndMethodProvider"),
InterfaceVersion("1"),
InterfaceRevison("0"),
Locale(0x409),
Description("Fabricam, Inc. port custom feature status description.") : Amended,
DisplayName("Fabricam, Inc.port custom feature status friendly name.") : Amended]
class Fabrikam_CustomPortData : Msvm_EthernetPortData {
[ Read,
Write,
WmiDataId(1),
InterfaceVersion("1"),
InterfaceRevision("0"),
Description(
"The current status of custom feature on this port.") : Amended]
uint32 CurrentStatus = 0 ;
};
埠自訂功能狀態定義的 MOF 類別會使用 MOF 編譯器 (Mofcomp.exe) ,在 CIM) 存放庫的通用資訊 (模型中註冊。 註冊之後,可以透過 PowerShell Cmdlet 和 WMI 型應用程式來設定 MOF 類別。
下列範例顯示必須輸入的命令,才能註冊包含自訂埠功能狀態定義的 MOF 類別的檔案 (Fabrikam_CustomPortData.mof) 。
net stop vmms
mofcomp -N:root\virtualization\v2 Fabrikam_CustomPortData.mof
net start vmms
如需如何使用 MOF 編譯器的詳細資訊,請參閱 編譯驅動程式的 MOF 檔案。
下列範例示範如何使用自訂埠功能狀態定義來取得埠資料。 在此範例中,Fabrikam_CustomPortData MOF 類別是用來從名為 「TestVm」 的 Hyper-V 磁碟分割取得埠狀態。 Fabrikam, Inc. 擴充功能會在 vSwitch 「TestSwitch」 上啟用,並針對狀態傳回 123。
PS C:\> $portData = Get-VMSwitchExtensionPortData -VmName TestVm -FeatureId DAA0B7CC-74DB-41ef-8354-7002F9FA463E
# Output the current value
PS C:\> $portData.Data.CurrentStatus
123
如需可延伸交換器延伸模組如何管理埠功能狀態資訊的詳細資訊,請參閱 管理自訂埠功能狀態資訊。