我创建了一个非常简单的PSSnapin,但是当我对程序集运行IntallUtil时,我得到了以下结果:
在C:\Tools\PowerShellCommands\SetServerDataSource\bin\Debug\SetServerDataSource.dll程序集中找不到具有RunInstallerAttribute.Yes属性的公共安装程序。删除InstallState文件,因为没有安装程序。
但是,我肯定有一个安装程序(继承自CustomPSSnapIn),带有RunInstaller(true)
[RunInstaller(true)]
public class SetServerDataSourcePSSnapIn : CustomPSSnapIn
{
///
}有什么想法吗?
发布于 2011-10-04 15:09:36
在安装good InstallUtil.exe时一定要小心。它存在一个64位和一个32位。
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\InstallUtil.exe对比
C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe您可以根据您公司中使用的框架对其进行调整。这取决于您引用System.Management.Automation的位置。在64位计算机上,如果您从以下位置执行此操作:
C:\Program Files\Reference Assemblies\Microsoft\WindowsPowerShell\v1.0它是一个64Bis程序集。
发布于 2011-10-04 15:11:31
完成此操作后,我刚刚对定义管理单元的PSSnapIn派生类应用了[RunInstaller(true)]。
但是,除非您确实必须支持PowerShell V1,否则最好创建一个(二进制)模块,并且不需要安装程序。
https://stackoverflow.com/questions/7644285
复制相似问题