是什么使我的windows服务停止(而不是崩溃)?

本文关键字:崩溃 我的 windows 服务 是什么 | 更新日期: 2023-09-27 18:03:31

我们有一个。net Windows服务偶尔会在一个特定的服务器上关闭,上个月大约关闭了三次。日志记录显示OnStop方法正在被调用,所以我认为服务没有崩溃。然而,我们不知道是什么关闭了服务。

有什么方法可以找出是什么关闭了服务?在OnStop期间有什么我可以记录的吗?Windows事件查看器只显示应用程序已关闭,安全日志没有显示任何用户帐户的身份验证。

该服务在Windows Server 2003 SP2(5.2.3790)上运行。net 3.5 SP1。

没有服务依赖项。此服务不依赖于任何其他服务,其他服务也不依赖于此服务

是什么使我的windows服务停止(而不是崩溃)?

无法从服务内部判断,因为这是从SCM调用的——无论谁要求SCM停止您的服务,服务都不可见…

我认为你的主要选择是在那个时候检查EventLog…其他服务也被关闭了吗?是否有任何计划的拍摄正在进行等?

一个"相当肮脏"的选项(最后的手段/绝望)是将CanStop设置为false…在这种情况下,会有人看到一个问题,停止你的服务,并"希望"问你为什么你的服务是不可停止的…

从我有限的经验来看,权限和安全性往往会给windows服务带来各种各样的问题。

服务以什么帐户运行?(如系统帐号、网络服务等)

我过去必须做的事情是设置服务在具有适当权限的网络帐户下运行。您可以在Properties窗口中执行此操作(右键单击"Services"管理控制台中的服务)。在登录中选择此帐户,选择要使用的帐户并输入帐户密码。