2012-01-04 86 views
11

我创建了一个windows系列如何安装同一个windows服务的多个实例

它从web配置文件中获取服务的名称。

我使用下面的链接从webconfig获取值。 http://www.codeproject.com/KB/dotnet/MultipleInstNetWinService.aspx

安装我的窗口服务,我只需点击该图标并重新安装 ,我在配置文件中更改数值和rebulid我的应用程序。

再次尝试安装时,它显示错误,如指定的服务已存在。

如何安装同一个windows服务的多个实例?

感谢, 普加

回答

8

你需要你的服务可执行文件复制到一个单独的目录,并使用InstallUtil.exe给它一个不同的服务名称。

这听起来像你错过了这个节the linked article

在命令提示符下,你需要使用InstallUtil安装服务的两个 实例。有关如何使用InstallUtil的说明, 请参阅Installer Tool (InstallUtil.exe)。一旦你完成安装 服务实例,你就会有类似的服务控制台 以上,其中服务实例1服务实例2从 相同的可执行文件创建的,只有从不同的目录位置 安装一个不同的服务名称。

+0

我尝试使用命令propemt进行安装。它显示installutil不recodized内部或外部命令 – Pooja 2012-01-04 10:49:29

+0

如何使用这个 – Pooja 2012-01-04 10:49:45

+0

这是.NET Framework的一部分安装,它是在C语言中:\ WINDOWS \ Microsoft.NET \框架\ V2.0.50727。 – shamp00 2012-01-04 11:12:26

14

我需要的服务与不同的参数运行的快速演示做到这一点。

我复制了包含service exe的目录,然后使用sc create命令来设置第二个服务。

sc create "[NewServiceName]" binPath="[PathToCopiedServiceDirectory]" 

How to create a windows service using the Sc.exe command

+1

确保您在为binPath的[PathToCopiedServiceDirectory]值的实际服务EXE文件名,否则该服务将指向目录,当您尝试启动该服务,你会得到一个“拒绝访问”错误。 – 2017-04-19 00:33:36

-4

运行asp.net命令提示符以管理员身份,然后使用命令 - installutil “C:\ ABC \ xyz.exe”。

如果您的服务已安装,那么你可以先卸载使用命令 - installutil \ U “C:\ ABC \ xyz.exe”

+1

这不是回答这个问题。 – Oded 2012-02-22 11:31:32

7
sc create MyService binPath= "MyService.exe" DisplayName= "MyService" 
sc description MyService "My description" 

参考:http://support.microsoft.com/kb/251192

其次显着答案并浪费了一个小时。这很简单,使用sc创建命令

+0

确保在binPath和显示名称 – 2017-06-01 07:47:15

0

我不得不在Visual Studio中的文件“ProjectInstaller.Designer.cs”中更改服务名称,并重新编译。希望能帮助到你。

+1

位温和平等和值后留下空间,答案应该是一个真正的评论 – codingadventures 2015-04-28 23:10:17

相关问题