Freigeben über


Status des benutzerdefinierten Portfeatures

Die Hyper-V-Plattform und die erweiterbare Hyper-V-Switch-Schnittstelle stellen die Infrastruktur bereit, um benutzerdefinierte status Informationen für einen erweiterbaren Switchport abzurufen. Diese Informationen werden als Portfeature status Informationen bezeichnet.

Benutzerdefinierte Features status Definitionen für eine hyper-V erweiterbare Switchporteigenschaft werden mithilfe von MOF-Klassendefinitionen (Managed Object Format) bei der WMI-Verwaltungsebene registriert. Zusätzlich zu den Strukturmembern, die die Attribute des benutzerdefinierten Portfeatures status Definition definieren, muss die MOF-Klasse auch Folgendes enthalten:

  • Eine UUID, die das benutzerdefinierte Portfeature status Definition eindeutig identifiziert.

  • Eine GUID, die die erweiterbare Switcherweiterung eindeutig identifiziert. Diese GUID wird als ExtensionId-Qualifizierer der MOF-Klasse deklariert und muss mit dem Wert des NetCfgInstanceId-Eintrags übereinstimmen, der in der INF-Datei der Erweiterung deklariert wird.

  • Eine beschreibende Klassennamenzeichenfolge. Der Name des Anbieters muss in der Zeichenfolge enthalten sein.

Im Folgenden sehen Sie ein Beispiel für eine MOF-Klasse für ein benutzerdefiniertes Feature status Definition eines erweiterbaren Switchports.

#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 ;
};

Die MOF-Klassen für benutzerdefinierte Features status Definition eines Ports werden mithilfe des MOF-Compilers (Mofcomp.exe) im CIM-Repository (Common Information Model) registriert. Nach der Registrierung kann die MOF-Klasse über PowerShell-Cmdlets und WMI-basierte Anwendungsprogramme konfiguriert werden.

Das folgende Beispiel zeigt die Befehle, die eingegeben werden müssen, um eine Datei (Fabrikam_CustomPortData.mof) zu registrieren, die die MOF-Klasse für ein benutzerdefiniertes Portfeature status Definition enthält.

net stop vmms
mofcomp -N:root\virtualization\v2 Fabrikam_CustomPortData.mof
net start vmms

Weitere Informationen zur Verwendung des MOF-Compilers finden Sie unter Kompilieren einer MOF-Datei des Treibers.

Das folgende Beispiel zeigt, wie Sie die benutzerdefinierte Portfunktion status Definition verwenden können, um Portdaten abzurufen. In diesem Beispiel wird die Fabrikam_CustomPortData MOF-Klasse verwendet, um Port status von einer Hyper-V-Partition mit dem Namen "TestVm" abzurufen. Die Fabrikam, Inc.-Erweiterung ist für den vSwitch "TestSwitch" aktiviert und gibt 123 für den status zurück.

PS C:\> $portData = Get-VMSwitchExtensionPortData -VmName TestVm -FeatureId DAA0B7CC-74DB-41ef-8354-7002F9FA463E
# Output the current value
PS C:\> $portData.Data.CurrentStatus
123

Weitere Informationen dazu, wie erweiterbare Switcherweiterungen das Portfeature status Informationen verwalten, finden Sie unter Verwalten des Status von benutzerdefinierten Portfeatures.