2008-12-05 14 views
6

Czy ktoś może mi pomóc przekonwertować program C# .NET na cmdlet PowerShell? Jestem bardzo nowy w tym obszarze. Pomóż mi wydostać się z tego punktu kontrolnego!Jak przekonwertować plik .cs na cmdlet PowerShell?

Pozdrawiam,

Arun

+0

Możliwy duplikat [Metody konwersji kodu C# na skrypt PowerShell?] (Http://stackoverflow.com/questions/2143460/methods-to-convert-c-sharp-code-to-a-powershell-script) –

Odpowiedz

13

Dodaj odwołanie do System.Management.Automation utworzyć klasę, która dziedziczy komandletu i zastąpić ProcessRecord metody:

[Cmdlet(VerbsCommon.Get, "Double")] 
public class GetDouble : Cmdlet 
{ 
    [Parameter] 
    public int SomeInput { get; set; } 

    protected override void ProcessRecord() 
    { 
     WriteObject(SomeInput * 2); 
    } 
} 

Dodaj instalatora:

[RunInstaller(true)] 
public class MySnapin : PSSnapIn 
{ 
    public override string Name { get { return "MyCommandlets"; } } 
    public override string Vendor { get { return "MyCompany"; } } 
    public override string Description { get { return "Does unnecessary aritmetic."; } } 
} 

Zainstalować zespół commandlet:

Installutil /i myassembly.dll 

I dodają:

Add-PsSnapin MyCommandlets 
+0

FYI: System.Management.Automation można się odwoływać po zainstalowaniu zestawów referencyjnych z zestawu Windows SDK. –

+0

świetna wskazówka. również wspaniała odpowiedź, to dokładnie to, czego szukałem. –

2

Przede wszystkim, należy przekonwertować plik twoi .cs do DLL przy użyciu szablonu PowerShell. Następnie za pomocą pssnapin i getproc można przekonwertować go do biblioteki DLL.

2

Jest to dodatek do reflektora, aby to zrobić. Oto dobry artykuł na przykładzie: http://msmvps.com/blogs/paulomorgado/archive/2009/09/18/powershell-for-the-net-developer.aspx *

.NET Reflector ma an array of add-ons on CodePlex, a jeden z tych jest the PowerShell add-on, który pozwala na demontować kodu bezpośrednio w PowerShell.

W tym przykładzie, ja otwarcie metoda ChangeAccountPassword z biblioteki SPUtility w SharePoint:

image

mogę teraz zmienić cele z C# do PowerShell.

image

Gdy trzeba konwertować metody pomocnika z C# do PowerShell czy jesteś nowym składni PowerShell, to narzędzie jest bardzo pomocne!

[*] Link nie działa od 10.12.2015.

+2

Link nie działa. Oto artykuł podsumowujący: https://blog.lekman.com/2011/10/converting-c-to-powershell.html – Zachafer

+1

@Zachafer Dziękujemy, wkleiłeś artykuł za pomocą linku w odpowiedzi na wypadek, gdy umrzesz. . –

Powiązane problemy