{"id":3961,"date":"2009-05-28T14:20:00","date_gmt":"2009-05-28T14:20:00","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/powershell\/2009\/05\/28\/adding-custom-cmdlet-help-for-providers\/"},"modified":"2019-02-18T13:12:36","modified_gmt":"2019-02-18T20:12:36","slug":"adding-custom-cmdlet-help-for-providers","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/powershell\/adding-custom-cmdlet-help-for-providers\/","title":{"rendered":"Adding Custom Cmdlet Help for Providers"},"content":{"rendered":"<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">A new feature of Windows PowerShell 2.0 lets you write custom cmdlet help for Windows PowerShell providers. This blog explains how to do it. (The topic will also be covered in excruciating detail in MSDN, but we don&#8217;t want you to wait.)<!--?xml:namespace prefix = o ns = \"urn:schemas-microsoft-com:office:office\" \/--><\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">What&#8217;s a Provider?<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">A Windows PowerShell <i>provider<\/i> is a C# program that exposes a data store to Windows PowerShell through a Windows PowerShell drive (PSDrive). When users view the PSDrive, the data in the data store appears to be organized like a file system drive. The drive has a path and users can navigate through the data store by using file system navigation commands like CD and DIR.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">For more information about designing a Windows PowerShell provider, see <\/span><\/span><a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=152037\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"color: #0000ff;font-family: Calibri\">How to Create a Windows PowerShell Provider<\/span><\/span><\/a><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\"> (<\/span><\/span><a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=152037\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"color: #0000ff;font-family: Calibri\">http:\/\/go.microsoft.com\/fwlink\/?LinkID=152037<\/span><\/span><\/a><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">).<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">If you&#8217;re a provider author (or the lucky writer), this feature is for you!<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">Custom cmdlets?<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">No, <b>custom help topics<\/b> for the provider cmdlets that your provider supports. Each provider supports a subset of the provider cmdlets that come with Windows PowerShell, such as Get-Item and Set-Location. You can find the complete list of provider cmdlets in <\/span><\/span><a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=113274\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"color: #0000ff;font-family: Calibri\">about_Providers<\/span><\/span><\/a><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\"> (<\/span><\/span><a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=113274\"><span style=\"color: #0000ff\"><span style=\"font-family: Calibri\"><span style=\"line-height: 115%;font-size: 12pt\">http:\/\/go.microsoft.com\/fwlink\/?LinkID=<\/span><span><span style=\"font-size: small\">113274<\/span><\/span><\/span><\/span><\/a><span style=\"font-family: Calibri\"><span style=\"font-size: small\"><span style=\"color: black\">)<\/span><span style=\"line-height: 115%;font-size: 12pt\">.<\/span><\/span><span style=\"color: black\"><\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">A custom cmdlet help topic explains how the provider cmdlet works in your provider. You can specify different help files for different paths in your provider. And you can include examples of using the cmdlet in the paths of your provider drive.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">How do users get custom cmdlet help?<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">When users are in a provider drive and they type &#8220;get-help&#8221; for a provider cmdlet, they get the custom cmdlet help for that provider (if it exists), instead of our generic cmdlet help topic.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">C:\\PS&gt;<span>&nbsp; <\/span>cd wsman:\\localhost\\ClientCertificate<span>&nbsp;&nbsp;&nbsp; <\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">PS WSMAN:\\localhost\\ ClientCertificate&gt; <span>&nbsp;<\/span>get-help new-item <\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">NAME<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>New-Item<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">SYNOPSIS<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Creates a new item. <b>In this location, the New-Item command creates a new client certificate.<\/b><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><b><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><b><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&#8230;<\/span><\/b><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Users can also get custom cmdlet help by using the (new) Path parameter of Get-Help. Set the value of Path to a location in the provider drive.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">C:\\PS&gt;<span>&nbsp; <\/span>get-help new-item -path wsman:\\localhost\\ClientCertificate<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">NAME<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>New-Item<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">SYNOPSIS<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Creates a new item. <b>In this location, the New-Item command creates a new client certificate.<\/b><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><b><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><b><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&#8230;<\/span><\/b><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">What problem does this feature solve?<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">It solves a big problem and a small problem.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"font-family: Calibri\"><b><span style=\"line-height: 115%;font-size: 12pt\">The small problem<\/span><\/b><span style=\"line-height: 115%;font-size: 12pt\"> is that the help topics for the provider cmdlets are very generic. We couldn&#8217;t anticipate all of the ways that the cmdlets might be used in a provider drive, so we say correct, but not particularly useful, things like &#8220;gets the items in the drive.&#8221; Custom cmdlet help lets you say more useful things like &#8220;gets the files and folders &#8221; or &#8220;gets the registry keys and entries.&#8221; More importantly, it lets you include examples of using the provider in your provider drive. <\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"font-family: Calibri\"><b><span style=\"line-height: 115%;font-size: 12pt\">The big problem<\/span><\/b><span style=\"line-height: 115%;font-size: 12pt\"> is that documentation of dynamic parameters is now too hard to find. Dynamic parameters that providers add to the provider cmdlets are described in the provider help topics. But because the dynamic parameters look just like the static ones, users don&#8217;t know where to look for parameter descriptions. It just looks like we forgot to doc a parameter. <\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt 0.5in\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">(Guess where the Encoding parameter of Set-Content is documented? Yes, it&#8217;s in the FileSystem provider help topic.)<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Custom cmdlet help allows us to document dynamic parameters along with the static parameters. For example, here&#8217;s the documentation of the Plugin and FileName parameters that the WSMAN provider adds to the New-Item cmdlet.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">C:\\PS&gt;<span>&nbsp; <\/span>cd wsman:\\localhost\\plugin<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">PS WSMan:\\localhost\\Plugin&gt; get-help new-item -parameter *<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-size: 10pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">-Plugin &lt;string&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Specifies the display name to use for the plug-in. If an error is returned by the plug-in, the display name<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>will be put in the error XML that is returned to the client application. The name is not locale specific.<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Required?<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>true<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Position?<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>named<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Default value<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Accept pipeline input?<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>false<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Accept wildcard characters?<span>&nbsp; <\/span>false<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">-FileName &lt;string&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Specifies the file name of the operations plug-in. Any environment variables that are put in this entry will<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>be expanded in the users&#8217; context when a request is received. Because each user could have a different version<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp; <\/span><span>&nbsp;<\/span>of the same environment variable, each user could have a different plug-in. This entry cannot be blank and must<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>point to a valid plug-in.<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Required?<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>true<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Position?<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>named<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Default value<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Accept pipeline input?<span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>false<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>Accept wildcard characters?<span>&nbsp; <\/span>false<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&#8230;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 8pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">How does it work?<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"font-family: Calibri\"><span style=\"line-height: 115%;font-size: 12pt\">When a user types &#8220;get-help&#8221; for a cmdlet, the help system gets the generic cmdlet help. But before returning it, it asks the provider <\/span><span style=\"font-size: small\">if it wants to override the generic help. The provider should return null or it should return custom cmdlet help XML (for the MAML schema). If the provider returns cmdlet help, the help system merges the custom help with the generic help and returns it to the user.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Many providers have different objects in each path of their provider drive. To accommodate this variation, the custom cmdlet help design lets you write different help topics for each path of the drive. If your provider has the same objects in all paths, you can omit the path-specific elements of the custom cmdlet help design.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">How do you do it?<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Custom cmdlet help requires a few changes to the provider and to the provider help topic.<\/span><\/span><\/p>\n<p class=\"MsoListParagraph\" style=\"text-indent: -0.25in;margin: 0in 0in 10pt 0.5in\"><span style=\"line-height: 115%;font-family: Wingdings;font-size: 12pt\"><span>n<span style=\"font: 7pt 'Times New Roman'\">&nbsp; <\/span><\/span><\/span><b><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Provider Changes<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt 0.5in\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">The provider must implement the new <\/span><\/span><a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=152386\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"color: #0000ff;font-family: Calibri\">ICmdletProviderSupportsHelp<\/span><\/span><\/a><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\"> interface. Instructions are in MSDN (<\/span><\/span><a href=\"http:\/\/go.microsoft.com\/fwlink\/?LinkID=152386\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"color: #0000ff;font-family: Calibri\">http:\/\/go.microsoft.com\/fwlink\/?LinkID=152386<\/span><\/span><\/a><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">).<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">public interface <\/span><span style=\"font-family: 'Lucida Console';color: #0c5c16;font-size: 10pt\">ICmdletProviderSupportsHelp<\/span><span style=\"font-family: 'Lucida Console';color: #1d1b11;font-size: 10pt\"><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">{<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">&nbsp;&nbsp;&nbsp; string <\/span><span style=\"font-family: 'Lucida Console';color: #0c5c16;font-size: 10pt\">GetHelpMaml<\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">(string <\/span><span style=\"font-family: 'Lucida Console';color: #1905ab;font-size: 10pt\">cmdletName<\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">, string <\/span><span style=\"font-family: 'Lucida Console';color: #1905ab;font-size: 10pt\">providerPath<\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">);<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">}<\/p>\n<p><\/span><span style=\"font-family: 'Times New Roman','serif';color: black;font-size: 12pt\"><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt 0.5in\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">When Get-Help calls the GetHelpMaml() method for the provider with the cmdlet name and a friendly name for the provider path, the method returns the custom cmdlet help for that cmdlet help topic in the provider path. If the <i>providerPath<\/i> is null, GetHelpMaml() returns the first custom help topic that it finds for the specified <i>cmdletName<\/i>.<\/p>\n<p><\/span><\/span><\/p>\n<p class=\"MsoListParagraph\" style=\"text-indent: -0.25in;margin: 0in 0in 10pt 0.5in\"><span style=\"line-height: 115%;font-family: Wingdings;font-size: 12pt\"><span>n<span style=\"font: 7pt 'Times New Roman'\">&nbsp; <\/span><\/span><\/span><b><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Help File Changes<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt 0.5in\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">To add custom cmdlet help to an XML-based help file (dll-help.xml), you imbed standard cmdlet help (MAML) in the provider help XML, with the help of a few new XML tags. <\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt 0.5in\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Conceptually, it looks like this:<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\">&lt;providerHelp&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>&#8230; # Provider Help Content<span>&nbsp; <\/span>&#8230;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>&lt;CmdletHelpPaths&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span>&lt; CmdletHelpPath id=&#8221;<\/span><span style=\"font-family: 'Lucida Console';color: #1905ab;font-size: 10pt\">providerPath<\/span><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&#8220;&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/span><span style=\"font-family: 'Lucida Console';color: #404040;font-size: 10pt\">&lt;command:command&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #404040;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span>&nbsp;<\/span>&lt;command:details&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #404040;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span>&lt;command:name&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #404040;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><\/span><span style=\"font-family: 'Lucida Console';color: #1905ab;font-size: 10pt\">cmdletName<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #404040;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span>&lt;\/command:name&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>&#8230;<span>&nbsp;&nbsp;&nbsp; <\/span># Custom cmdlet help content &#8230;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #7f7f7f;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/span><span style=\"font-family: 'Lucida Console';color: #404040;font-size: 10pt\">&lt;\/command:command&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span>&lt;\/CmdletHelpPath&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>&lt;\/CmdletHelpPaths&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\">&lt;\/providerHelp&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">New XML Tags<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Many providers have different objects in each path of their provider drive. To accommodate this variation, the custom cmdlet help design lets you write different help topics for each path of the drive. If your provider has the same objects in all paths, you can omit the path-specific elements of the custom cmdlet help design.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">There are two new XML tags for custom cmdlet help.<\/span><\/span><\/p>\n<p class=\"MsoListParagraphCxSpFirst\" style=\"text-indent: -0.25in;margin: 0in 0in 0pt 0.5in\"><span style=\"line-height: 115%;font-family: Wingdings;font-size: 12pt\"><span>n<span style=\"font: 7pt 'Times New Roman'\">&nbsp; <\/span><\/span><\/span><span style=\"font-family: Calibri\"><b><span style=\"line-height: 115%;font-size: 12pt\">CmdletHelpPaths<\/span><\/b><span style=\"line-height: 115%;font-size: 12pt\">: Contains all custom cmdlet help topics (for all provider paths).<\/span><\/span><\/p>\n<p class=\"MsoListParagraphCxSpMiddle\" style=\"text-indent: -0.25in;margin: 0in 0in 0pt 0.5in\"><span style=\"line-height: 115%;font-family: Wingdings;font-size: 12pt\"><span>n<span style=\"font: 7pt 'Times New Roman'\">&nbsp; <\/span><\/span><\/span><span style=\"font-family: Calibri\"><b><span style=\"line-height: 115%;font-size: 12pt\">CmdletHelpPath<\/span><\/b><span style=\"line-height: 115%;font-size: 12pt\">: Contains the cmdlet help topics for a particular provider path. If your provider has the same objects in all paths, you need only one instance of this tag.<\/span><\/span><\/p>\n<p class=\"MsoListParagraphCxSpLast\" style=\"text-indent: -0.25in;margin: 0in 0in 10pt 1in\"><span style=\"line-height: 115%;font-family: 'Courier New';font-size: 12pt\"><span>o<span style=\"font: 7pt 'Times New Roman'\">&nbsp;&nbsp; <\/span><\/span><\/span><span style=\"font-family: Calibri\"><b><span style=\"line-height: 115%;font-size: 12pt\">ID<\/span><\/b><span style=\"line-height: 115%;font-size: 12pt\"> attribute: [Optional] Specifies a friendly name for the provider path. If you are not specifying multiple paths, omit the attribute or use an empty string as the value (&#8220;&#8221;).<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Here&#8217;s the XML skeleton of a help file that includes provider help. We&#8217;ll use the WSMAN provider help file as an example.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;utf-8&#8243; ?&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&lt;helpItems schema=&#8221;maml&#8221;&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #595959;font-size: 10pt\">&#8230;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #595959;font-size: 10pt\"># Standard cmdlet help #<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #595959;font-size: 10pt\">&#8230;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\">&lt;providerHelp&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>&lt;Name&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/span><span style=\"font-family: 'Lucida Console';color: #7f7f7f;font-size: 10pt\">WSMan<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>&lt;\/Name&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\"><span>&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;<\/span><\/span><span style=\"font-family: 'Lucida Console';color: #595959;font-size: 10pt\">&#8230;<span>&nbsp; <\/span># Standard provider help #<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>&lt;\/RelatedLinks&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span><\/span><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&lt;CmdletHelpPaths&gt;<span>&nbsp; <\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span>&lt;CmdletHelpPath ID=&#8217;<\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">ClientCertificate<\/span><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&#8216;&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1.5in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\">&lt;command:command&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span>&lt;command:details&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span>&nbsp;<\/span>&lt;command:name&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;<\/span><span>&nbsp;&nbsp;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">New-Item<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span>&nbsp;<\/span>&lt;\/command:name&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #595959;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span>&nbsp;&nbsp;&nbsp;<\/span><\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">&#8230; # Custom cmdlet help &#8230;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;text-indent: 0.5in;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\">&lt;\/command:command&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>&lt;\/CmdletHelpPath&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>&lt;CmdletHelpPath ID=&#8217;<\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">Listener<\/span><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&#8216;&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1.5in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\">&lt;command:command&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span><span>&nbsp; <\/span><span>&nbsp;&nbsp;&nbsp;&nbsp;<\/span>&lt;command:details&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>&lt;command:name&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">New-Item<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>&lt;\/command:name&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span><\/span><span style=\"font-family: 'Lucida Console';color: black;font-size: 10pt\">&#8230; # Custom cmdlet help &#8230;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;text-indent: 0.5in;margin: 0in 0in 0pt 1in\"><span style=\"font-family: 'Lucida Console';color: #4f6228;font-size: 10pt\">&lt;\/command:command&gt;<\/span><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/span>&lt;\/CmdletHelpPath&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: red;font-size: 10pt\"><span>&nbsp;&nbsp;&nbsp; <\/span>&lt;\/CmdletHelpPaths&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';color: #1f497d;font-size: 10pt\">&lt;\/providerHelp&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&lt;\/helpItems&gt;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><span>&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt 0.5in\"><span style=\"font-family: 'Lucida Console';font-size: 10pt\">&nbsp;<\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">Merged Help Content<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">To save you from having to rewrite an entire cmdlet help topic, the custom cmdlet help topic is actually a combination of the generic help topic and the elements that you add.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Some of the cmdlet help topic elements that you write replace the generic elements. Others are appended to the generic elements. The following table shows the rules. (You cannot change them.)<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Notice that dynamic parameters appear before the static ones (they&#8217;re prepended), but your custom examples replace the generic examples in the help file and your custom descriptions of static parameters replace the generic parameter descriptions.<\/span><\/span><\/p>\n<table width=\"240\" cellpadding=\"0\" cellspacing=\"0\" border=\"1\" class=\"MsoTableGrid\" style=\"margin: auto auto auto 27.9pt;width: 2.5in;border-collapse: collapse;border: medium none\">\n<tbody>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"padding-bottom: 0in;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;background: #c6d9f1;height: 0.25in;padding-top: 0in;border: #d9d9d9 1pt solid\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><b><span style=\"font-family: 'Cambria','serif'\"><span style=\"font-size: small\">Field<\/span><\/span><\/b><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;background: #c6d9f1;height: 0.25in;border-top: #d9d9d9 1pt solid;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><b><span style=\"font-family: 'Cambria','serif'\"><span style=\"font-size: small\">Action<\/span><\/span><\/b><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Name<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">None<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Synopsis<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Syntax<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Append<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Detailed Description<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Append<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Parameters<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Prepend<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Parameter Description<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Input Type<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Return Type<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Notes<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Append<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Examples<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Related Links<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Remarks<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">None<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Role<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Functionality<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<tr style=\"height: 0.25in\">\n<td width=\"156\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #d9d9d9 1pt solid;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 117pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Component<\/span><\/span><\/span><\/p>\n<\/td>\n<td width=\"84\" style=\"border-bottom: #d9d9d9 1pt solid;border-left: #f0f0f0;padding-bottom: 0in;background-color: transparent;padding-left: 5.4pt;width: 63pt;padding-right: 5.4pt;height: 0.25in;border-top: #f0f0f0;border-right: #d9d9d9 1pt solid;padding-top: 0in\">\n<p class=\"MsoNormal\" style=\"line-height: normal;margin: 0in 0in 0pt\"><span><span style=\"font-size: small\"><span style=\"font-family: Calibri\">Replace<\/span><\/span><\/span><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><b><span style=\"line-height: 115%;font-size: 14pt\"><span style=\"font-family: Calibri\">Okay, JuneB, where are yours?<\/span><\/span><\/b><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">If custom cmdlet help is such a great idea, then where is the custom cmdlet help for the core providers, such as FileSystem, Registry, and Certificate? <\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Well, let&#8217;s just say that we were really busy. The core providers have not yet implemented the ICmdletProviderSupportsHelp interface, so we can&#8217;t display custom cmdlet help. But we&#8217;ll be working on it for a future release of Windows PowerShell.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">In the meantime, feel free to ask questions. You can submit them by adding comments to this blog and I&#8217;ll update with answers if necessary.<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">&nbsp;<\/span><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin: 0in 0in 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">June Blender&nbsp;[MSFT] <br \/><\/span><\/span><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\"><a href=\"mailto:juneb@microsoft.com\">juneb@microsoft.com<\/a><br \/><\/span><\/span><span style=\"font-family: 'Lucida Console';font-size: 10pt\"><span style=\"line-height: 115%;font-size: 12pt\"><span style=\"font-family: Calibri\">Get-Help -online:&nbsp; <a href=\"http:\/\/technet.microsoft.com\/en-us\/library\/bb978525.aspx\">http:\/\/technet.microsoft.com\/en-us\/library\/bb978525.aspx<\/a><\/span><\/span><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A new feature of Windows PowerShell 2.0 lets you write custom cmdlet help for Windows PowerShell providers. This blog explains how to do it. (The topic will also be covered in excruciating detail in MSDN, but we don&#8217;t want you to wait.) &nbsp; What&#8217;s a Provider? A Windows PowerShell provider is a C# program that [&hellip;]<\/p>\n","protected":false},"author":600,"featured_media":13641,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[174,194,4,270,277],"class_list":["post-3961","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-powershell","tag-get-help","tag-helpfile","tag-howto","tag-powershell-v2","tag-providers"],"acf":[],"blog_post_summary":"<p>A new feature of Windows PowerShell 2.0 lets you write custom cmdlet help for Windows PowerShell providers. This blog explains how to do it. (The topic will also be covered in excruciating detail in MSDN, but we don&#8217;t want you to wait.) &nbsp; What&#8217;s a Provider? A Windows PowerShell provider is a C# program that [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts\/3961","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/users\/600"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/comments?post=3961"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts\/3961\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/media\/13641"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/media?parent=3961"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/categories?post=3961"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/tags?post=3961"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}