如何拒绝访问服务?

时间:2010-02-18 02:46:26

标签: windows windows-services

某些服务无法使用Service Management Console启动或停止。 ex)DcomLaunch,SamSs

服务管理禁用这些服务的停止按钮 安慰。 所以,我们无法阻止服务。(即使我们有管理员 帐户)

有可能吗? 我怎么能这样做?

提前致谢。

1 个答案:

答案 0 :(得分:2)

您的服务最终会调用SetServiceStatus来指定其状态。部分原因是它接受的控制措施。如果未指定SERVICE_ACCEPT_STOP,则无法关闭该服务。对于托管代码,您可以在ServiceBase上设置CanStop属性。

允许更精细控制的另一种可能性是更改服务上的ACL。 MSDN有一篇示例文章here。如果您希望允许非管理员用户控制您的服务何时运行,则通常会使用此方法。

请仔细考虑是否应停止服务 - 用户应控制其机器并允许随意停止服务。