国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 應用 > 軟件技巧 > 正文

用winsw將Windows程序作為系統服務自動運行

2024-07-15 01:54:41
字體:
來源:轉載
供稿:網友

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,說明已將程序注冊為服務。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 唐河县| 资源县| 聂荣县| 隆子县| 天祝| 台湾省| 区。| 嘉禾县| 东山县| 敦煌市| 张北县| 成武县| 翁牛特旗| 岳西县| 昌图县| 确山县| 隆德县| 内江市| 衢州市| 彰化市| 白朗县| 汶上县| 顺昌县| 固原市| 林口县| 洞口县| 雅安市| 自贡市| 永善县| 汉寿县| 清流县| 太湖县| 阿勒泰市| 昌吉市| 华蓥市| 凤阳县| 松潘县| 古浪县| 武川县| 绩溪县| 繁昌县|