Windows服务已启动,然后停止

时间:2013-01-21 07:11:45

标签: .net windows-services

我创建了一个运行正常的Windows应用程序,然后我尝试将此应用程序作为Windows服务运行。在我启动服务后,我收到如下错误 enter image description here

以下是我从EventViewer \ Application

获取的错误日志

错误应用程序名称:MyApp.Client.exe,版本:1.0.0.0,时间戳:0x50fce240 错误模块名称:KERNELBASE.dll,版本:6.1.7600.16385,时间戳:0x4a5bdaae 异常代码:0xe0434352 故障偏移:0x00009617 错误进程id:0x1a7c 错误应用程序启动时间:0x01cdf7a1dcc54dc3 错误应用程序路径:E:\ Email Service \ Mobile \ MyService \ Main \ Source \ Client \ Service \ Service1 \ bin \ Release \ MyApp.Client.exe 错误模块路径:C:\ Windows \ system32 \ KERNELBASE.dll 报告编号:2ef633e5-6395-11e2-8e41-e4115b2d2915

如何解决此错误?

2 个答案:

答案 0 :(得分:0)

这是一个非常模糊的错误。我可以从很多方面得出结果,而绝对不是代码错误。

  • Windows修补程序需要重新启动。 sfc / scannow以管理员身份在命令提示符下显示。
  • 该错误提到的位置上的kernal.dll应该正常存在,否则以admin身份在命令提示符下运行regsvr32 KERNELBASE.dll。
  • 重新启动服务器。
  • 确保安装了正确的框架以及对配置的任何引用。
  • 更正服务用户(如果该用户应以特定的访问权限或许可运行)。
  • 确保将应用程序配置设置为“任何CPU”,以避免32位和64位不匹配。
  • 确保没有任何系统服务被卡在启动中,如果有任何简单的事情要做,那就是重新启动并验证或检查事件日志以查找特定问题

我们的原因是服务用户,错误的用户映射导致了问题。

关于, 萨吉

答案 1 :(得分:0)

我知道这是一个老问题,但我遇到了这个问题,找不到任何有用的东西,所以我希望这能帮助别人!

该问题与 sc create "YourServiceNameHere" 命令有关。使用此命令时,您可以提供参数 type,提供错误的值可能会导致问题。

运行 sc query "YourServiceNameHere" 命令时,结果返回该服务尝试使用共享进程运行,而实际上需要它自己的进程。

我的解决方案是将我的命令从 sc create "YourServiceNameHere" type= share 更改为 sc create "YourServiceNameHere"。运行指定类型的服务创建命令后,更改 sc 查询命令的输出并显示它正在自己的进程中运行,服务成功启动并继续运行。

我真的希望这对某人有所帮助,这给我带来了很大的压力!