注册windows系统服务

目录

一、把任意exe程序注册成windows系统服务

二、将bat文件或exe程序注册成windows服务

三、设置window服务示例

1、redis

2、ActiveMQ

3、tomcat

4、nginx


一、把任意exe程序注册成windows系统服务

1、方法一:使用windows自带的命令InstallUtil.exe

步骤:

运行--〉cmd:打开cmd命令框

,在命令行里定位到InstallUtil.exe所在的位置,

InstallUtil.exe 默认的安装位置是在C:/Windows/Microsoft.NET/Framework/v2.0.50727里面。

1)安装服务命令:在命令行里输入下面的命令:

InstallUtil.exe Path/WinServiceName.exe

,其中Path表示ServiceName.exe所在的位置,回车即可

2).启动服务命令

net start ServiceName

3). 停止服务命令

net stop ServiceName

4). 卸载服务命令:

InstallUtil.exe /u Path/WinServiceName.exe

二、将bat文件或exe程序注册成windows服务

命令行使用sc命令: SC Servername command Servicename Optionname= Optionvalues

(等号后面的空格必须)

加入服务: sc create ServiceName binPath= 路径 start= auto

删除服务: sc delete ServiceName

例:将Tomcat加入到系统服务中:

sc create Tomcat binPath= F:/apache-tomcat/bin/startup.bat start= auto

Tomcat服务删除: sc delete Tomcat

Servername

可选择:可以使用双斜线,如\\myserver,也可以是\\192.168.0.1来选择远程计算机。如果在本地计算机上作就不用添加任何参数。

Command

下面列出SC可以使用的命令:

config 改变一个服务的配置。(长久的)

continue 对一个服务送出一个继续控制的要求。

control 对一个服务送出一个控制。

create 创建一个服务。(增加到注册表中)

delete 删除一个服务。(从注册表中删除)

EnumDepend 列举服务的从属关系。

GetDisplayName 获得一个服务的显示名称。

GetKeyName 获得一个服务的服务键名。

interrogate 对一个服务送出一个询问控制要求。

pause 对一个服务送出一个暂停控制要求。

qc 询问一个服务的配置。

query 询问一个服务的状态,也可以列举服务的状态类型。

start 启动一个服务。

stop 对一个服务送出一个停止的要求。

SC create

这个命令可以在注册表和服务控制管理数据库建立一个入口。

语法1:

sc servername create Servicename Optionname= Optionvalue

详细说明一下optionname和optionvalue。

Optionname Optionvalue 描述:

type= own, share, interact, kernel, filesys

关于建立服务的类型,选项值包括驱动程序使用的类型,默认是share。

start= boot, system, auto, demand, disabled 关于启动服务的类型,选项值包括驱动程序使用的类型,默认是demand(手动)。

error= normal, severe, critical, ignore

当服务在导入失败错误的严重性,默认是normal。

binPath= (string)

服务二进制文件的路径名,这个字符串是必须设置的。

group= (string)

这个服务属于的组,这个组的列表保存在注册表中的ServiceGroupOrder下。默认是nothing。

tag= (string)

如果这个字符串被设置为yes,sc可以从CreateService call中得到一个tagId。然而,SC并不显示这个标签。默认是nothing。

depend= (space separated string)有空格的字符串。

在这个服务启动前必须启动的服务的名称或者是组。

obj= (string)

账号运行使用的名称,也可以说是登陆身份。默认是localsystem Displayname= (string)

一个为在用户界面程序中鉴别各个服务使用的字符串。

password= (string)

一个密码,如果一个不同于localsystem的账号使用时需要使用这个。

Optionvalue Optionname参数名称的数值列表。参考optionname。当我们输入一个字符串时,如果输入一个空的引用这意味着一个空的字符串将被导入。

sc \\myserver create NewService binpath= c:\winnt\system32\NewServ.exe type= own start= auto depend= "+TDI Netbios"

sc create PolicyAgent binpath= "C:\WINDOWS\system32\lsass.exe" type= share start= auto displayname= "IPSEC Services" depend= RPCSS/Tcpip/IPSec

三、设置window服务示例

1、redis

redis-server --service-install redis.windows.conf

redis-server --service-start

redis-server --service-stop

redis-server --service-uninstall

2、ActiveMQ

进入bin目录,64位操作系统可以进入\bin\win64

启动命令:点击activemq.bat

安装服务:点击InstallService.bat

删除服务:点击UninstallService.bat

默认访问界面:http://localhost:8161/admin/index.jsp

ActiveMQ默认启动到8161端口,服务端默认端口是 61616 ,默认用户名密码为admin、admin

3、tomcat

使用cmd命令进入到你的tomcat文件下的bin目录,

安装服务:service install tomcat7Test

移除服务: service remove tomcat7Test

tomcat7Test是服务名,可以随便取值,默认为tomcat7

服务启动时报错 "错误1053:服务没有及时响应启动或控制请求

通常是由于不正确的超时设置导致的,请看如下解决方案,

单击开始,单击运行,键入regedit,然后单击"确定"。

找到并单击以下注册表子项:HKEY_LOCAL_MACHINE------SYSTEM------CurrentControlSet------Control

在右窗格中,找到ServicesPipeTimeout entry.Note.如果ServicesPipeTimeout条目不存在,必须创建它。要做到这一点,请按照下列步骤操作:

1)在编辑菜单上,指向"新建",然后单击DWORD值。

2)键入ServicesPipeTimeout,然后按ENTER键。

3)右键单击ServicesPipeTimeout,然后单击"修改"。

4)单击十进制,键入60000,然后单击"确定"。在服务超时前,该值以毫秒为单位显示时间。

5)重新启动计算机。

4、nginx

在nginx根目录 cmd后输入:

启动:start nginx

重新加载配置:nginx -s reload

停止:nginx -s stop 或 nginx.exe -s quit

相关推荐
ö Constancy3 小时前
一台电脑的硬件组成与作用:按功能分类详解(Windows 与 Linux 视角)
linux·windows·电脑
雪落漂泊1 天前
Liunux进程(七):程序控制篇(中)
linux·运维·windows
承渊政道2 天前
Fooocus本地AI绘图教程:Windows部署、低门槛生图与远程访问
人工智能·windows·cpolar·fooocus·生图
陈工大模型2 天前
收到乱码压缩包之后,我重新测了 7-Zip、Bandizip 和win解压缩
windows·电脑·软件工程·软件需求·7-zip
谙弆悕博士2 天前
在文件夹右键直接打开 Kali WSL:一条 `wsl --cd` 注册表脚本
windows·脚本·wsl·右击·ksli
陈工大模型2 天前
解压工具的三个技术分水岭:编码、分卷、容器格式
人工智能·windows·安全·解压工具·免费国内办公软件
Zucker n3 天前
文献发现、课题组织与证据可追溯的论文阅读。
论文阅读·windows·ubuntu
flyingonpine4 天前
PowerShell脚本数字签名实战:自签名证书、代码签名与信任链验证
windows·信任链
goehou4 天前
让 AI 替我操作这台电脑,先把手能伸多远定下来
windows·自动化·权限管理·ai agent
公子小六4 天前
基于.NET的Windows窗体编程之WinForms数据持久化(1)
windows·microsoft·c#·.net·winforms