修改windows service的启动类型
[*]描述:
[*] 在注册表和服务数据库中修改服务项。
[*]用法:
[*] sc <server> config <option1> <option2>...
[*]
[*]选项:
[*]注意: 选项名称包括等号。
[*] 等号和值之间需要一个空格。
[*] type= <own|share|interact|kernel|filesys|rec|adapt>
[*] start= <boot|system|auto|demand|disabled|delayed-auto>
[*] error= <normal|severe|critical|ignore>
[*] binPath= <BinaryPathName>
[*] group= <LoadOrderGroup>
[*] tag= <yes|no>
[*] depend= <依存关系(以 / (斜杠) 分隔)>
[*] obj= <AccountName|ObjectName>
[*] DisplayName= <显示名称>
[*] password= <密码>
坑爹之处在于等于号后面有空格。
例如有个服务叫myService,想变更为手动启动,指令如下:
[*]C:\Windows\system32>sc config myService start= demand <--请注意!=后面有个空格!!!
[*] ChangeServiceConfig 成功
查看sc帮助信息如下所示:
[*]C:\Windows\system32>help sc
[*]
[*]错误:未知命令
[*]
[*]描述:
[*] SC 是用于与服务控制管理器和服务进行通信的命令行程序。
[*]用法:
[*] sc <server> <option1> <option2>...
[*]
[*]
[*] 选项 <server> 的格式为 "\\ServerName"
[*] 键入 "sc " 可以获得有关命令的进一步帮助
[*] 命令:
[*] query-----------查询服务的状态,
[*] 或枚举服务类型的状态。
[*] queryex---------查询服务的扩展状态,
[*] 或枚举服务类型的状态。
[*] start-----------启动服务。
[*] pause-----------向服务发送 PAUSE 控制请求。
[*] interrogate-----向服务发送 INTERROGATE 控制请求。
[*] continue--------向服务发送 CONTINUE 控制请求。
[*] stop------------向服务发送 STOP 请求。
[*] config----------更改服务的配置(永久)。
[*] description-----更改服务的描述。
[*] failure---------更改服务失败时执行的操作。
[*] failureflag-----更改服务的失败操作标志。
[*] sidtype---------更改服务的服务 SID 类型。
[*] privs-----------更改服务的所需权限。
[*] qc--------------查询服务的配置信息。
[*] qdescription----查询服务的描述。
[*] qfailure--------查询失败时服务执行的操作。
[*] qfailureflag----查询服务的失败操作标志。
[*] qsidtype--------查询服务的服务 SID 类型。
[*] qprivs----------查询服务的所需权限。
[*] qtriggerinfo----查询服务的触发器参数。
[*] qpreferrednode--查询首选的服务 NUMA 节点。
[*] delete----------(从注册表)删除服务。
[*] create----------创建服务(将其添加到注册表)。
[*] control---------向服务发送控制。
[*] sdshow----------显示服务的安全描述符。
[*] sdset-----------设置服务的安全描述符。
[*] showsid---------显示相应于假定名称的 SID 字符串。
[*] triggerinfo-----配置服务的触发器参数。
[*] preferrednode---设置首选的服务 NUMA 节点。
[*] GetDisplayName--获取服务的 DisplayName
[*] GetKeyName------获取服务的 ServiceKeyName。
[*] EnumDepend------枚举服务的依存关系。
[*]
[*] 下列命令不要求服务名称:
[*] sc <server> <command> <option>
[*] boot------------(ok | bad) 指示是否将上一次启动保存为
[*] 最近一次已知的正确启动配置
[*] Lock------------锁定服务数据库
[*] QueryLock-------查询 SCManager 数据库的 LockStatus
[*]示例:
[*] sc start MyService
[*]
[*]是否想参阅 QUERY 和 QUERYEX 命令的帮助? [ y | n ]:
[*]y
[*]
[*]QUERY 和 QUERYEX 选项:
[*] 如果查询命令带服务名称,将返回
[*] 该服务的状态。其他选项不适合这种
[*] 情况。如果查询命令不带参数或
[*] 带下列选项之一,将枚举此服务。
[*] type= 要枚举的服务的类型(driver, service, all)
[*] 默认 = service)
[*] state= 要枚举的服务的状态 (inactive, all)
[*] (默认 = active)
[*] bufsize= 枚举缓冲区的大小(以字节计)
[*] (默认 = 4096)
[*] ri= 开始枚举的恢复索引号
[*] (默认 = 0)
[*] group= 要枚举的服务组
[*] (默认 = all groups)
[*]
[*]语法示例
[*]sc query - 枚举活动服务和驱动程序的状态
[*]sc query eventlog - 显示 eventlog 服务的状态
[*]sc queryex eventlog - 显示 eventlog 服务的扩展状态
[*]sc query type= driver - 仅枚举活动驱动程序
[*]sc query type= service- 仅枚举 Win32 服务
[*]sc query state= all - 枚举所有服务和驱动程序
[*]sc query bufsize= 50 - 枚举缓冲区为 50 字节
[*]sc query ri= 14 - 枚举时恢复索引 = 14
[*]sc queryex group= "" - 枚举不在组内的活动服务
[*]sc query type= interact - 枚举所有不活动服务
[*]sc query type= driver group= NDIS - 枚举所有 NDIS 驱动程序
页:
[1]