重复的Windows服务,不同的名称和位置 - 将无法启动

时间:2012-03-26 08:01:07

标签: c# windows-services

我有一个Windows服务,其名称由app.config设置。 我将名称设置如下:

ServiceBase.SerivceName是在Service类构造函数上设置的(我已经删除了Service.Designer中ServiceName的设置):

ServiceName = ConfigurationManager.AppSettings.Get("ServiceName");

ServiceInstaller设置DisplayName和ServiceName,如下所示:

ServiceInstaller.DisplayName = config.AppSettings.Settings["ServiceName"].Value;
ServiceInstaller.ServiceName = ServiceInstaller.DisplayName;

所有工作都按预期工作,因此服务与重复服务一起安装得很好 它们有不同的名称和不同的位置 在服务列表中显示为单独的条目。

但我一次只能启动一项服务。我尝试启动第二项服务时遇到的错误是无益的:

The service is not responding to the control function.

尝试运行时会记录2个系统事件:

A timeout was reached (30000 milliseconds) while waiting for the Blah Service service to connect.  

The Blah Service service failed to start due to the following error:
The service did not respond to the start or control request in a timely fashion.

感激不尽的任何帮助。

感谢。

1 个答案:

答案 0 :(得分:2)

由于缺乏足够的信息来解决手头的问题,我建议使用http://topshelf-project.com/ - 它使得在.NET中安装,配置和调试Windows服务变得轻而易举。