如何获取有关 Windows 服务的所有信息?

如何获取有关 Windows 服务的所有信息?

在一台计算机上,创建一个 Windows 服务。

我曾尝试在另一台计算机上创建相同的文件,但似乎不起作用。

为了解决我的问题,我计划询问所有与 Windows 服务相关的信息,并在两台计算机上进行比较。

虽然这看起来合乎逻辑,但并不是那么简单:有命令sc query,,,......,这让我担心可能会遗漏某些配置。sc qcsc qdescription

是否有一个单一的命令行命令可以显示所有与 Windows 服务相关的信息?

只是为了让您了解当前的情况:

质量控制

Prompt>sc qc Application_Server
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: Application_Server
        TYPE               : 10  WIN32_OWN_PROCESS
        START_TYPE         : 3   DEMAND_START
        ERROR_CONTROL      : 1   NORMAL
        BINARY_PATH_NAME   : E:\Application\Server 2\ApplicationServer.exe
        LOAD_ORDER_GROUP   :
        TAG                : 0
        DISPLAY_NAME       : Application_Server
        DEPENDENCIES       :
        SERVICE_START_NAME : LocalSystem

查询

Prompt>sc query Application_Server

SERVICE_NAME: Application_Server
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

sc 描述

Prompt>sc qdescription Application_Server
[SC] QueryServiceConfig2 SUCCESS

SERVICE_NAME: Application_Server
DESCRIPTION:

答案1

所有 Windows 服务的信息都使用短服务名称存储在注册表中。例如,使用spooler

c:\>reg query HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\spooler

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\spooler
    DependOnService    REG_MULTI_SZ  RPCSS\0http
    Description        REG_SZ        @%systemroot%\system32\spoolsv.exe,-2
    DisplayName        REG_SZ        @%systemroot%\system32\spoolsv.exe,-1
    ImagePath          REG_EXPAND_SZ %SystemRoot%\System32\spoolsv.exe
    ObjectName         REG_SZ        LocalSystem
    [etc...]

您可以仅导出此注册表项并将其导入另一台计算机以迁移整个服务。您仍需要以相同的方式安装底层程序(ApplicationServer.exe在您的示例中)。您如果服务设置为“以”用户帐户登录,则需要再次设置凭据,因为这些凭据不可导出。


要获取有关特定服务属性的更多可读详细信息,请查看其他服务控制q命令:

c:\>sc.exe ?

qc--------------Queries the configuration information for a service.
qdescription----Queries the description for a service.
qfailure--------Queries the actions taken by a service upon failure.
qfailureflag----Queries the failure actions flag of a service.
qsidtype--------Queries the service SID type of a service.
qprivs----------Queries the required privileges of a service.
qtriggerinfo----Queries the trigger parameters of a service.
qpreferrednode--Queries the preferred NUMA node of a service.
qmanagedaccount-Queries whether a services uses an account with a password managed by LSA.
qprotection-----Queries the process protection level of a service.
quserservice----Queries for a local instance of a user service template.

相关内容