【问题标题】:Cannot start service无法启动服务
【发布时间】:2010-10-05 14:12:37
【问题描述】:

我在服务器上运行了 2 个其他服务,它们启动和停止都没有问题,但是其中一个无法启动。我看不出它们的实现或配置文件有什么不同。在使用 InstallUtil 安装服务后尝试启动服务时,我收到以下消息:

服务没有响应控制功能

键入 NET HELPMSG 2186 可获得更多帮助

NET HELPMSG 2186:

说明:该服务此时无法运行您的命令

提前非常感谢!

【问题讨论】:

  • 检查您的 Windows 事件日志。有什么错误吗?
  • EDBService.exe [9956] 中发生未处理的异常 ('System.TypeLoadException')。即时调试此异常失败并出现以下错误:无法启动调试器,因为没有用户登录。
  • 我不禁想知道这个 TypeLoadException

标签: c# wcf service


【解决方案1】:

这很可能是由于安装了服务,然后又卸载了,现在您正尝试再次安装。重新启动机器,然后重试。

更新

根据事件日志错误,您正尝试以当前登录用户身份运行服务(我猜您是使用远程桌面连接的)。这不是正确的方法,您需要将服务作为 LocalSystem 运行。在项目属性窗口中,更改服务的标识。

更新 2

在服务/组件类的设计视图中,单击 serviceProcessInstaller1(或类似),然后在属性中看到一个下拉列表:具有 4 个条目的帐户:User/LocalNetwork/LocalService/LocalSystem。使其成为本地系统

【讨论】:

  • 我将尝试重新启动。但我已经用服务安装/卸载了一百万次,从来没有遇到过这个问题
  • 更新了答案,看看吧。
  • 非常感谢您的回复。我正在查看服务的项目属性,但找不到更改身份的位置。我记得以前改过这个,但现在找不到了。你能说得更具体点吗?
  • 看看这里:blog.torving.dk/post/…
  • 在服务/组件类的设计视图中,单击 serviceProcessInstaller1(或类似),然后在属性中看到一个下拉列表:具有 4 个条目的帐户:User/LocalNetwork/LocalService/LocalSystem。使其成为本地系统
【解决方案2】:

你可以在开始事件上放

try
{
//...
}
catch(Exception ex)
{
EventLog.WriteEntry(ex.Message + ex.StackTrace);
}

看看发生了什么?

将您的进程附加(工具 > 附加到进程)到 Visual Studio for DEBUG。您可以通过调试看到发生了什么,但 EventLog 也可以正常工作。

【讨论】:

  • 事件查看器中似乎没有显示与我之前看到的有任何不同。我找对地方了吗?
猜你喜欢
  • 1970-01-01
  • 2019-03-28
  • 2011-08-05
  • 2017-03-20
  • 2016-04-23
  • 2015-11-17
  • 2013-02-23
  • 2014-04-20
相关资源
最近更新 更多