我创建了一个非常简单的PSSnapin,但是当我对程序集运行IntallUtil时,我得到以下结果:
没有带有RunInstallerAttribute的公共安装程序。是属性可以在C:ToolsPowerShellCommandsSetServerDataSourcebinDebugSetServerDataSource.dll程序集中找到。删除InstallState文件,因为没有安装程序。
然而,我肯定有一个安装程序(从CustomPSSnapIn继承)与[RunInstaller(true)]:
[RunInstaller(true)]
public class SetServerDataSourcePSSnapIn : CustomPSSnapIn
{
///
}
任何想法?
要小心安装它与良好的InstallUtil.exe。存在一个64位和一个32位。
C:WindowsMicrosoft.NETFramework64v2.0.50727InstallUtil.exe
和
C:WindowsMicrosoft.NETFrameworkv2.0.50727InstallUtil.exe
您可以将其调整为您公司中使用的框架。这取决于你引用System.Management.Automation
的地方。在64位计算机上,如果你从:
C:Program FilesReference AssembliesMicrosoftWindowsPowerShellv1.0
当我这样做时,我刚刚将[RunInstaller(true)]
应用于定义snapin的PSSnapIn
派生类。
然而,除非你真的必须支持PowerShell V1,否则最好创建一个(二进制)模块,而不需要安装程序。