Powershell:二进制模块与脚本模块

时间:2013-12-19 10:39:15

标签: c# powershell dll module msbuild

我正在为350多个项目(VS 2010)编写一个构建过程(在我的模块中包装msbuild)。该模块现在包含许多功能。虽然它很有效,但是,我已经开始考虑编写一个Dll而不是基于脚本的模块。另外因为我可以在这些dll中使用Win-Forms(C#)。

我正在Google搜索两种方法的性能和其他问题,但没有获得足够的信息。

如果有人有这方面的经验,请提供一些建议,告知PS模块哪种方法更好:二进制( .dll)或脚本( .psm1)

此致

1 个答案:

答案 0 :(得分:2)

从PowerShell 2.0开始,将cmdlet实现为脚本或二进制文件没有区别。实际上,对于cmdlet参数和其他功能,脚本cmdlet可以使用二进制cmdlet可用的任何内容。您可以阅读更多about Advanced Functions来理解这一点。

对我而言,这一切都归结为语言的选择。如果您熟悉.NET和C#,则可能需要实现二进制cmdlet。否则,只需使用一个可用于相同目的的脚本模块。