0

我有以下问题,我希望在系统上安装我的应用程序作为服务。我的类继承自 System.Configuration.Install.Installer。当我在该类的构造函数中尝试获取 Context 属性的参数时,问题就开始了,然后我得到以下异常:

无法创建(我从安装程序继承的类名)安装程序类型的实例。

当我打印出 Context 属性时,我在构造函数中看到它为 null(并且在尝试访问 context 属性时会引发异常)。
相同的代码在 2003 上运行良好,安装成功完成,但在这里失败。

4

1 回答 1

0

如果可能,将您的代码从构造函数移至安装。Installer 的常见用法是:

using ( TransactedInstaller transactedInstaller = new TransactedInstaller() )
{
    transactedInstaller.Installers.Add(myInstaller);
    transactedInstaller.Context = new InstallContext(null, null);
    transactedInstaller.Install(new System.Collections.Hashtable());
}

这就是Context构造函数中为 null 的原因。

于 2012-11-06T07:11:03.247 回答