windows - Windows XP 服务什么时候启动?

标签 windows windows-services

当机器重新启动时,在用户登录之前是否运行了所有在帐户(系统/服务/网络服务)下运行的服务?

京东。

最佳答案

服务有一个为每个服务定义的“启动类型”,这些类型是boot, system, auto, demand, disabled.服务也相互依赖,在注册表中定义。

服务 bootsystem start 类型在只有 NT Native 二进制文件可以运行的时间段内启动(Win32 API 尚未准备好)。例如,这些服务包括 csrss.exe它提供了一些 Win32 API。

Win32 初始化后,启动类型为 automatic 的服务开始了。在此期间,允许用户登录的服务运行 -- 这会显示登录提示并允许用户登录。

在任何情况下,如果正在启动的服务依赖于其他服务,那么其他服务将提前启动。

所以,是的,用户可以在执行服务之前登录。但是,如果登录服务依赖于您的 服务……不过,如果您检测到您的服务已经启动,则更好。考虑将命名的全局事件与 CreateEvent() api 一起使用。您的服务创建事件,您的应用程序在调用服务之前等待事件。此外,您的应用可以使用 ServiceControl API 仅在使用时启动服务。

windows“Services.msc”管理插件隐藏bootsystem服务。要了解有关这些启动类型的更多信息,请参阅此 API 文档:MSDN: ChangeServiceConfig Function .

关于windows - Windows XP 服务什么时候启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1681999/

相关文章:

c++ - 如何解决“被忽略的击键”

c# - 将win服务引入setup

c# - Windows 2003 上的 Windows 激活服务

c# - Windows Service使用.net core的BackgroundService,如何优雅停止?

css - 当滚动条可见时停止浏览器调整网站大小

windows - gvim 窗口标题中的编码问题

.net - 在 .net 中设置 Windows 服务描述的最佳方法是什么

windows - sh.exe": emacs: command not found (Git bash Windows)

c# - Windows 服务中托管的 WCF 服务无法正常运行

c# - ASP.NET Core .NET 6 Preview 7 Windows 服务