用sc.exe将程序加入windows系统服务
投稿:mdxy-dxy
命令行使用sc命令.
关于sc命令的详解,请自行查看帮助(sc /?),在此只简单提及如何加入系统服务功能.
描述:
SC 是用于与服务控制管理器和服务进行通信的命令行程序。
用法:
sc <server> [command] [service name] <option1> <option2>...
选项 <server> 的格式为 "\\ServerName"
键入 "sc [command]" 可以获得有关命令的进一步帮助
命令:
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 ]:
加入服务:
sc create ServiceName binPath= 路径 start= auto
(等号后面的空格必须)
服务需要自动启动需要加start= auto,默认创建的服务是需要手动启动的
删除服务:
sc delete ServiceName
如果文件名有空格需要加上双引号,例如 sc delete "Service Name"
e.g 将Tomcat加入到系统服务中:
sc create Tomcat binPath= F:\apache-tomcat\bin\startup.bat start= auto
将Tomcat服务删除:
sc delete Tomcat
如果删除出现如下错误可以参考这篇文章
命令行下通过sc删除服务提示[SC] OpenService FAILED 1060处理方法