用winsw将Windows程序作为系统服务自动运行

所属分类: 软件教程 / 系统工具 阅读数: 629
收藏 0 赞 0 分享

winsw介绍

有时候我们需要在Windows下开机运行某些程序,这对于有图形界面的程序来说一般不是什么事,在选项中选中开机启动,然后它们就可以自动运行了。但是如果我们想运行一些命令行程序的话就没这么方便了。

原来我的做法是写一个bat脚本,然后将它的快捷方式复制到C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp,这样就可以开机自启了。不过这种方式有一个非常大的缺点,就是开机之后会显示一个命令行窗口!而且这个窗口还不能关,一关程序就停了。

其实Windows自带了一个后台程序管理的功能,就是我们经常用到的服务。但是Windows的服务只有程序的开发者在写程序的时候引用到这个功能,我们才能利用服务来控制程序的启动和关闭。对于一般的命令行程序来说,没办法利用服务。所以今天我们就来使用一下标题的这个winsw。它可以将Windows上的任何一个程序注册为服务,如果不需要,也可以方便的卸载服务。

使用winsw

首先要下载winsw。它是一个单个的可执行文件,我们到Github release这里就可以下载winsw了。一般来说当然是下载最新的。winsw可以运行在.NET2和.NET4两个版本上,当然如果使用Win10等比较新的系统,最好下载更新版本的.NET。

下载完之后最好把文件改成一个比较短小的名字,例如winsw.exe这样的,方便后面输入命令。

编写配置文件

我们需要编写一个和程序同名的XML文件作为winsw的配置文件。文件大体上长这样,这是官网的例子。
 

 <service>
      <id>jenkins</id>
      <name>Jenkins</name>
      <description>This service runs Jenkins continuous integration system.</description>
      <env name="JENKINS_HOME" value="%BASE%"/>
      <executable>java</executable>
      <arguments>-Xrs -Xmx256m -jar "%BASE%\jenkins.war" --httpPort=8080</arguments>
      <logmode>rotate</logmode>
    </service>

看到XML的标签名,我想大家也能猜到这些参数是干嘛的,所以我就不介绍了。下面是我的一个配置文件例子。

<service>
    <id>kcp</id>
    <name>kcp</name>
    <description>这个服务用来将ss使用kcp协议加速</description>
    <executable>client_windows_amd64</executable>
    <arguments>-c kcp-config.json</arguments>
    <logmode>reset</logmode>
</service>

注册服务

编写好配置文件之后,记得把配置文件和可执行文件放在一起,这样winsw才能正确识别配置文件。然后我们打开一个管理员权限的命令提示符或Powershell窗口,然后输入下面的命令,如果返回值为0,说明已将程序注册为服务。

winsw install

然后打开Windows的服务,我们可以看到这下已经出现了注册的服务,我们可以像一般服务那样开启、关闭它。
 

 

如果不再需要这个服务,使用winsw uninstall即可卸载服务。当然还有诸如start、stop这样的命令启动和关闭服务。更重要的是,没有那个既不美观又烦人的命令提示符窗口。

更多精彩内容其他人还在看

iOS Toolkit如何安装?iOS Toolkit安装方法

iOS Toolkit是一款IOS系统修复工具,用户使用该软件可以修复iOS系统在各种问题中恢复正常,包括陷入恢复模式、DFU模式、白苹果标识、黑屏、循环启动等问题,本文为大家带来的是该软件的安装教程,需要了解的朋友可以阅读下文
收藏 0 赞 0 分享

如何用NLITE来定制您的xp系统(nite教程)

nlite是一款Windows系统瘦身工具,用它给系统安装盘瘦身是当前的热门话题。利用Nlite给系统安装盘瘦身后,可以在配置较低的老机器上顺利安装和运行Win XP及2003等系统,可以让一些老机器重新焕发光彩
收藏 0 赞 0 分享

winsetupfromusb怎么用?winsetupfromusb使用方法简介

winsetupfromusb是一款U盘启动盘制作工具,winsetupfromusb怎么用?是很多新用户都想知道的问题,今天小编就给大家简单介绍一下winsetupfromusb使用方法,希望对大家有所帮助
收藏 0 赞 0 分享

msiblast怎么用?msiBlast NI卸载工具使用方法简介

msiblast怎么用?是很多新用户都想知道的问题,msiblast虽然是英文页面,但使用方法并不复杂,今天小编就给大家简单介绍一下msiBlast NI卸载工具使用方法,需要的朋友欢迎借鉴
收藏 0 赞 0 分享

数据恢复软件哪个比较好用?六款非常好用的电脑数据恢复软件推荐

目前网络上有非常多的数据恢复软件供用户选择,但不同版本的数据恢复软件使用功能不一,且免费的版本较少,本文为大家推荐介绍了几款比较好用的数据恢复软件,需要的朋友可以前来阅读下载
收藏 0 赞 0 分享

腾讯魔镜壁纸在哪里?腾讯电脑管家魔镜壁纸位置及使用方法介绍

近日,腾讯电脑管家全新升级“桌面整理-魔镜壁纸”功能,那么,腾讯魔镜壁纸在哪里?魔镜壁纸怎么用呢?今天小编就给大家带来腾讯电脑管家魔镜壁纸位置及使用方法介绍,需要的朋友快去了解一下吧
收藏 0 赞 0 分享

adobe creative suite cleaner tool怎么用?Adobe卸载清理工具使用方法介绍

adobe creative suite cleaner tool怎么用?是很多新用户都想知道的问题,今天小编就给大家带来详细的Adobe卸载清理工具使用方法介绍,并提供windows版和mac版的adobe creative suite cleaner tool免费下载
收藏 0 赞 0 分享

赤兔Bitlocker分区恢复软件常见问题及解决方法

赤兔Bitlocker分区恢复软件是一款专门恢复误操作、重装系统等原因造成的Bitlocker加密分区丢失、Bitlocker加密分区无法打开的数据恢复软件,在使用这款软件时会遇到一些问题,本文整理了最常见的问题并作出解答
收藏 0 赞 0 分享

winstep xtreme怎么破解?Winstep Xtreme17安装破解图文详细教程

最近,很多网友问小编winstep xtreme怎么破解?winstep xtreme是一款很好用的Windows电脑桌面美化工具,今天小编就给大家带来Winstep Xtreme17安装破解图文详细教程,并附有winstep xtreme破解版下载,需要的朋友欢迎借鉴
收藏 0 赞 0 分享

短信猫如何通过超级终端进行配置和调试?

短信猫是常用的短信发送设备,支持移动联通电信等运营商,今天我们就来说说短信猫如何通过超级终端进行配置和调试?如果你遇到过短信猫死机的问题,那就可以按照这个方法试试哦
收藏 0 赞 0 分享
查看更多