2010-10-19 46 views
0

我有一个包含多个服务的dot net服务项目。现在已经到达我们的部署工程师,他使用自动脚本安装他的所有服务。该脚本使用SC.exe创建服务,他不使用intallUtil。不幸的是,从我所看到的情况来看,SC.exe只为它在程序集中找到的第一个服务创建了一个注册表项,似乎没有选项可以指定程序集中的各个服务。除了切换到intallUtil(他并不热衷)或拆分程序集(我真的不太热衷),我们有什么选择?从多服务/网络组件安装服务

感谢您提供的任何帮助。

回答

1

您可以使用System.Configuration.Install.AssemblyInstaller编写自定义安装程序。

将一些逻辑放在Main(string [] args)中,如果通过命令行传入/ i,则会安装所有服务。然后,部署工程师可以修改他的脚本以运行yourservice/i而不是SC Create。

+0

谢谢,我设法说服他使用intallUtil,但似乎是一个完全合理的答案。 – Vman 2010-10-21 08:14:21