本文标签:

Windows服务是运行一些服务程序的较好方式(这些程序专门为各种功能提供服务,无操作界面,运行在后台),其创建方法也很简单,通过系统自带的sc命令即可方便的创建。

sc命令创建Windows服务的方法非常简单,方法如下(注意start=后面有个空格)

sc create ServiceName binPath= "C:\xxx.exe" start= auto

创建后要启动它才会开始运行,否则要等到下次开机才会运行,两种方法都可以启动,下面那种简单一些

sc start ServiceName
net start ServiceName

删除一个服务也很简单

sc delete ServiceName

但是!不是所有程序都可以作为服务的方式运行,因为作为服务运行需要能返回运行情况等信息,所以有的程序添加后会出现以下提示:
Windows无法启动 XXX 服务(位于 本地计算机上)。错误1053:服务没有及时响应启动或者控制请求。
图片:
Windows无法启动 XXX 服务(位于 本地计算机上)。错误1053:服务没有及时响应启动或者控制请求。

既然知道了原因,就有了解决办法,微软有一个srvany.exe可以解决此问题,首先创建一个服务,但是执行文件要选择srvany.exe,然后在另外的属性里面加入要执行的文件信息就可以了。(提前下载srvany.exe到C:\Windows目录下,不要放System32文件夹,因为64位系统会出现兼容性问题)
Srvany.exe下载地址 http://u.x2009.net/q

sc create ServiceName binPath= "C:\Windows\srvany.exe" start= auto

加入要执行的文件的信息

reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceName\Parameters /v Application /t REG_SZ /d "这里填入你要作为服务运行的程序地址比如c:\xxx.exe" /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceName\Parameters /v AppParameters /t REG_SZ /d "如果程序需要参数则填在这里,如果不需要,清空这段文字或者整行" /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceName\Parameters /v Application /t REG_SZ /d "这里填入程序运行时所在文件夹(作为环境变量),如果不填,则清除这段内容或者直接删除本行" /f

然后启动服务即可。(其中一条命令即可)

sc start ServiceName
net start ServiceName

因为操作较为复杂,所以有人写了一款软件,叫SrvanyUI,集成了了srvany.exe,新建服务较为简单(打开软件,点增加服务,选自建服务即可达到相同效果)。
SrvanyUI下载地址 http://u.x2009.net/l

注意:以上所有命令都需要管理员权限才能运行,如果是Windows 8/8.1/10,需要SYSTEM权限才行(在开始菜单里找到命令行提示符,右键里面有使用管理员身份运行)

 » 订阅本站:http://feed.x2009.net