2010-02-19 22 views
5

के लिए समर्थन प्राप्त करें सहायता मैंने सी # में कुछ कस्टम पावरशेल सीएमडीलेट बनाए हैं और सहायता-सहायता cmdlet का उपयोग करके कुछ जानकारी प्रदर्शित करने के लिए प्रदान करना चाहते हैं; जैसे "मेरी मदद करें- cmdlet"।कस्टम पावरशेल cmdlet

मैंने PSSnapIn से प्राप्त एक मूल स्नैपिन बनाया है और विवरण, नाम और विक्रेता गुणों को ओवरराइड किया है। मैंने अपनी सहायता फ़ाइल "Cmdlets.dll-Help.xml" भी बनाई है। here निर्देशित के रूप में Cmdlets.dll असेंबली का सही नाम है।

मैं जल्दी से इस मदद का परीक्षण करना निम्न स्क्रिप्ट बनाया:

$ErrorActionPreference = "Stop" 
$scriptFolder = Split-Path $script:MyInvocation.MyCommand.Path 

$dll = ($scriptFolder + "\Release\x64\Cmdlets.dll") 
Write-Host "Testing Cmdlets in $dll" -fore Green 

[System.Reflection.Assembly] $assembly = [System.Reflection.Assembly]::LoadFrom($dll) 
Import-Module -assembly $assembly 

get-help get-latestfiles 

यह सिर्फ cmdlet पैरामीटर के बारे में कुछ डिफ़ॉल्ट मदद आगे बढ़ने की बात लगती है, लेकिन मेरे उदाहरण मैं XML में लिखा है के किसी भी प्राप्त करने के लिए विफल रहता है फ़ाइल। क्या किसी के पास कोई विचार है कि यह क्यों है?

उत्तर

2

ऐसा लगता है कि मेरी मदद के लिए दो समस्याएं काम नहीं कर रही थीं। सबसे पहले यह था कि पावरहेल को उठाए जाने के लिए XML को सीएमडीलेट डीएलएल की आउटपुट निर्देशिका में कॉपी करने की आवश्यकता है।

दूसरा कारण मेरी सहायता फ़ाइल में एक त्रुटि हुई है। मुझे यकीन नहीं है कि यह क्या था लेकिन पावरहेल चुपचाप विफल होने लग रहा था, भले ही त्रुटि कार्रवाई वरीयता को रोकने के लिए सेट किया गया था। मैंने सी: \ विंडोज \ System32 \ WindowsPowerShell \ v1.0 \ en-US \ Microsoft.PowerShell.Commands.Management.dll-Help.xml से सीधे XML को उठाना समाप्त कर दिया और मेरी आवश्यकताओं के अनुरूप इसे संशोधित कर दिया।

1

गेट-हेल्प केवल डिफ़ॉल्ट रूप से cmdlet के लिए सहायता का सबसेट दिखाता है। पैरामीटर और अपने उदाहरण देखने के लिए पूर्ण निर्दिष्ट करें:

Get-Help Get-LatestFiles -Full 

अगर ऐसा मुद्दा नहीं है (लगता है कि ऐसा नहीं है) तो यह PowerShell script that generates skeleton MAML files पर एक नजर है। इसे चलाएं और यह देखने के लिए अपने आउटपुट का उपयोग करें कि क्या आपको उचित मदद मिली है या नहीं।

+0

दुर्भाग्य से ऐसा लगता है कि मुझे कुछ और याद आ रहा है। पूर्ण स्विच निर्दिष्ट करना केवल उसी डिफ़ॉल्ट सहायता को प्रदर्शित करता है जो पावरहेल 2 प्रदान करता है। – Jason

संबंधित मुद्दे