Aufrufen von Cmdlets und Skripts in einem Cmdlet
Ein Cmdlet kann andere Cmdlets und Skripts innerhalb der Eingabeverarbeitungsmethode des Cmdlets aufrufen. Dadurch können Sie ihrem Cmdlet die Funktionalität vorhandener Cmdlets und Skripts hinzufügen, ohne den Code neu schreiben zu müssen.
Die Invoke-Methode
Alle Cmdlets können ein vorhandenes Cmdlet aufrufen, indem sie die System.Management.Automation.Cmdlet.Invoke-Methode aus einer Eingabeverarbeitungsmethode wie System.Management.Automation.Cmdlet.BeginProcessingaufrufen, die vom Cmdlet überschrieben wird. Sie können jedoch nur die Cmdlets aufrufen, die direkt von der System.Management.Automation.Cmdlet-Klasse abgeleitet sind. Sie können kein Cmdlet aufrufen, das von der System.Management.Automation.PSCmdlet-Klasse abgeleitet ist.
Die System.Management.Automation.Cmdlet.Invoke*-Methode weist die folgenden Varianten auf.
System.Management.Automation.Cmdlet.Invoke Diese Variante ruft das Cmdlet-Objekt auf und gibt eine Auflistung von T-Typobjekten zurück.
System.Management.Automation.Cmdlet.Invoke Diese Variante ruft das Cmdlet-Objekt auf und gibt einen stark typisierten Emumerator zurück. Mit dieser Variante kann der Benutzer die Objekte in der Auflistung verwenden, um benutzerdefinierte Vorgänge auszuführen.
Beispiele
Beispiel | BESCHREIBUNG |
---|---|
Aufrufen von Cmdlets innerhalb eines Cmdlets | In diesem Beispiel wird gezeigt, wie Sie ein Cmdlet aus einem anderen Cmdlet aufrufen. |
Aufrufen von Skripts in einem Cmdlet | In diesem Beispiel wird gezeigt, wie Sie ein Skript aufrufen, das für das Cmdlet aus einem anderen Cmdlet bereitgestellt wird. |