如何将.cs文件转换为PowerShell cmdlet?
任何人都可以帮我将C#.NET程序转换为PowerShell cmdlet吗? 我对这个领域很新。 请帮我走出这个检查站!
问候,
阿伦
添加对System.Management.Automation的引用,创建一个inheritance自Cmdlet的类并重写ProcessRecord方法:
[Cmdlet(VerbsCommon.Get, "Double")] public class GetDouble : Cmdlet { [Parameter] public int SomeInput { get; set; } protected override void ProcessRecord() { WriteObject(SomeInput * 2); } }
添加安装程序:
[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."; } } }
安装命令行开关程序集:
Installutil /i myassembly.dll
并添加:
Add-PsSnapin MyCommandlets
Reflector有一个附加组件可以做到这一点。 以下是一篇文章的好文章: http : //msmvps.com/blogs/paulomorgado/archive/2009/09/18/powershell-for-the-net-developer.aspx *
.NET Reflector 在CodePlex上有一系列附加组件 ,其中一个是PowerShell附加组件,它允许您将代码直接反汇编到PowerShell中。
在此示例中,我将从SharePoint中的SPUtility库中打开方法ChangeAccountPassword:
我现在可以将目标从C#更改为PowerShell。
当您需要将辅助方法从C#转换为PowerShell时,或者如果您不熟悉PowerShell语法,此工具确实非常有用!
[*]截至2015年12月10日该链接已关闭。
首先,您应该使用PowerShell模板将.cs文件转换为DLL。 然后通过使用pssnapin
和getproc
您可以将其转换为DLL。