Unterstützung einer Onlinehilfe
Hinweis
Die manuelle Erstellung von XML-basierten Hilfen ist sehr schwierig. Mit dem PlatyPS Modul können Sie Hilfe in Markdown schreiben und dann in XML-basierte Hilfe konvertieren. Dies erleichtert das Schreiben und Verwalten von Hilfe. PlatyPS- können auch die aktualisierbaren Hilfepakete für Sie erstellen. Weitere Informationen finden Sie unter Erstellen einer XML-basierten Hilfe mithilfe von PlatyPS-.
Ab PowerShell 3.0 gibt es zwei Möglichkeiten, das Get-Help
Online-Feature für PowerShell-Befehle zu unterstützen. In diesem Thema wird erläutert, wie Sie dieses Feature für verschiedene Befehlstypen implementieren.
Informationen zur Onlinehilfe
Onlinehilfe war immer ein wichtiger Bestandteil von PowerShell. Obwohl das cmdlet Get-Help
Hilfethemen an der Eingabeaufforderung anzeigt, bevorzugen viele Benutzer das Lesen online, einschließlich Farbcodierung, Links und Teilen von Ideen in Communityinhalten und wiki-basierten Dokumenten. Vor dem Aufkommen der aktualisierbaren Hilfe haben Onlinehilfen die am häufigsten up-to-date-Version der Hilfedateien bereitgestellt.
Mit der Einführung der aktualisierbaren Hilfe in PowerShell 3.0 spielt die Onlinehilfe immer noch eine wichtige Rolle. Neben der flexiblen Benutzeroberfläche bietet die Onlinehilfe Hilfe für Benutzer, die keine aktualisierbare Hilfe zum Herunterladen von Hilfethemen verwenden oder nicht verwenden können.
Funktionsweise von Get-Help -Online
Damit Benutzer die Onlinehilfethemen für Befehle finden können, verfügt der Befehl Get-Help
über einen Onlineparameter, der die Onlineversion des Hilfethemas für einen Befehl im Standard-Internetbrowser des Benutzers öffnet.
Mit dem folgenden Befehl wird beispielsweise das Onlinehilfethema für das Cmdlet Invoke-Command
geöffnet.
Get-Help Invoke-Command -Online
Um Get-Help -Online
zu implementieren, sucht das Cmdlet Get-Help
nach einem URI (Uniform Resource Identifier) für das Hilfethema der Onlineversion an den folgenden Speicherorten.
Der erste Link im Abschnitt Verwandte Links Abschnitt des Hilfethemas für den Befehl. Das Hilfethema muss auf dem Computer des Benutzers installiert sein. Dieses Feature wurde in PowerShell 2.0 eingeführt.
Die HelpUri- Eigenschaft eines beliebigen Befehls. Auf die HelpUri-Eigenschaft kann zugegriffen werden, auch wenn das Hilfethema für den Befehl nicht auf dem Computer des Benutzers installiert ist. Dieses Feature wurde in PowerShell 3.0 eingeführt.
Get-Help
sucht im ersten Eintrag im Abschnitt Verwandte Links nach einem URI, bevor der Wert der HelpUri-Eigenschaft abgerufen wird. Wenn der Eigenschaftswert falsch ist oder geändert wurde, können Sie ihn überschreiben, indem Sie einen anderen Wert in den ersten verknüpften Link eingeben. Der erste verwandte Link funktioniert jedoch nur, wenn die Hilfethemen auf dem Computer des Benutzers installiert sind.
Hinzufügen eines URI zum ersten verknüpften Link eines Befehlshilfethemas
Sie können Get-Help -Online
für jeden Befehl unterstützen, indem Sie dem ersten Eintrag im Abschnitt Verwandte Links Abschnitt des XML-basierten Hilfethemas für den Befehl einen gültigen URI hinzufügen. Diese Option ist nur in XML-basierten Hilfethemen gültig und funktioniert nur, wenn das Hilfethema auf dem Computer des Benutzers installiert ist. Wenn das Hilfethema installiert und der URI aufgefüllt wird, hat dieser Wert Vorrang vor der HelpUri- Eigenschaft des Befehls.
Zur Unterstützung dieses Features muss der URI im maml:uri
-Element unter dem ersten maml:relatedLinks/maml:navigationLink
Element im maml:relatedLinks
-Element angezeigt werden.
Der folgende XML-Code zeigt die richtige Platzierung des URI. Der Online version:
Text im maml:linkText
-Element ist eine bewährte Methode, ist jedoch nicht erforderlich.
<maml:relatedLinks>
<maml:navigationLink>
<maml:linkText>Online version:</maml:linkText>
<maml:uri>https://go.microsoft.com/fwlink/?LinkID=113279</maml:uri>
</maml:navigationLink>
<maml:navigationLink>
<maml:linkText>about_History</maml:linkText>
<maml:uri/>
</maml:navigationLink>
</maml:relatedLinks>
Hinzufügen der HelpUri-Eigenschaft zu einem Befehl
In diesem Abschnitt wird gezeigt, wie Sie die HelpUri--Eigenschaft zu Befehlen unterschiedlicher Typen hinzufügen.
Hinzufügen einer HelpUri-Eigenschaft zu einem Cmdlet
Fügen Sie für in C# geschriebene Cmdlets ein HelpUri-attribut zur Cmdlet- klasse hinzu. Der Wert des Attributs muss ein URI sein, der mit http
oder https
beginnt.
Der folgende Code zeigt das HelpUri--Attribut der Get-History
Cmdlet-Klasse.
[Cmdlet(VerbsCommon.Get, "History", HelpUri = "https://go.microsoft.com/fwlink/?LinkID=001122")]
Hinzufügen einer HelpUri-Eigenschaft zu einer erweiterten Funktion
Fügen Sie für erweiterte Funktionen eine HelpUri-eigenschaft zum attribut CmdletBinding hinzu. Der Wert der Eigenschaft muss ein URI sein, der mit "http" oder "https" beginnt.
Der folgende Code zeigt das attribut HelpUri der funktion New-Calendar
function New-Calendar {
[CmdletBinding(SupportsShouldProcess=$true,
HelpUri="https://go.microsoft.com/fwlink/?LinkID=01122")]
Hinzufügen eines HelpUri-Attributs zu einem Cim-Befehl
Fügen Sie für CIM-Befehle dem CmdletMetadata--Element in der CDXML-Datei ein HelpUri- attribut hinzu.
Der Wert des Attributs muss ein URI sein, der mit http
oder https
beginnt.
Der folgende Code zeigt das HelpUri-Attribut des Befehls Start-Debug
CIM
<CmdletMetadata Verb="Debug" HelpUri="https://go.microsoft.com/fwlink/?LinkID=001122"/>
Hinzufügen eines HelpUri-Attributs zu einem Workflow
Fügen Sie für Workflows, die in der PowerShell-Sprache geschrieben sind, dem Workflowcode ein .EXTERNALHELP
Kommentarschlüsselwort hinzu. Der Wert des Schlüsselworts muss ein URI sein, der mit http
oder https
beginnt.
Hinweis
Die HelpUri-Eigenschaft wird für XAML-basierte Workflows in PowerShell nicht unterstützt.
Der folgende Code zeigt das schlüsselwort .EXTERNALHELP
in einer Workflowdatei.
# .EXTERNALHELP "https://go.microsoft.com/fwlink/?LinkID=138338"