windows xp服务什么时候开始?

时间:2009-11-05 16:55:16

标签: windows windows-services

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

JD。

3 个答案:

答案 0 :(得分:4)

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

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

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

在每种情况下,如果正在启动的服务取决于其他服务,则其他服务将提前启动。

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

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

答案 1 :(得分:0)

是,使用(默认情况下)内置Windows帐户。在“服务(运行services.msc)”中,有一个“登录为”列,告诉用户该服务以“。”登录。

答案 2 :(得分:0)

我不这么认为。这应该是异步的。如果您足够快地登录,一些服务仍将出现。这不包括“系统”服务