1. 程式人生 > 其它 >系統小技巧:隱蔽又安全 以服務方式執行程式

系統小技巧:隱蔽又安全 以服務方式執行程式

Windows 10的很多系統服務是在後臺執行,這樣既隱蔽又可以在每個使用者登入前就自動執行。如果我們自己的程式想實現類似的效果,比如公司的網站要使用Nginx作為電子郵件代理伺服器,為了方便使用,需要將其作為服務啟動,藉助Srvstart(https://github.com/rozanski/srvstart)就可以實現。

小提示:

由於系統服務在後臺執行不支援互動介面,因此並不適合於QQ、微信這類程式,否則其僅僅在後臺執行而無法檢視訊息。

Srvstart是綠色軟體,下載後將全部4個檔案先解壓到桌面,接著再將所有檔案全部複製到“C:\Windows”即可(圖1)。

啟動記事本,按下列格式輸入程式碼,並將其儲存為“1.ini”檔案,放置在D:\備用(其中Nginx 為服務名稱,“startup=”後面輸入需要啟動的程式的完整路徑):

[Nginx]

startup="D:\nginx\nginx.exe"

接著以管理員身份啟動命令提示符,輸入“SC CREATE Nginx Displayname= "Nginx" binpath= "srvstart.exe Nginx -c D:1.ini" start= auto”,螢幕提示“[SC] CreateService 成功”,表示成功安裝了服務(圖2)。

程式碼解釋:

CREATE Nginx 和Displayname= "Nginx"表示建立服務名稱和顯示名稱均為Nginx,“binpath=”後面是使用srvstart.exe程式安裝服務,並將服務設定為自動啟動。這裡注意每個“=”後面都要使用一個半形空格與後面的引數隔開,配置檔案路徑的寫法為“D:1.ini”,注意不要寫為“D:\1.ini”。

現在開啟服務設定視窗,在其中就可以看到上面新建的名為Nginx的服務,開啟屬性視窗可以看到其執行的命令為“srvstart.exe Nginx -c D:1.ini”。這樣在下次啟動系統後,會根據這個命令啟動nginx.exe(即D:\1.ini配置檔案中“startup=”後的程式)。以後在後臺就可以使用Nginx服務了,這樣既可以隱蔽執行,又可以在伺服器需要重啟時自動啟動(圖3)。

小提示:

如果後續不再使用這個服務,以管理員身份啟動“C:\Windows\svc.exe”後按提示輸入r,回車後再輸入nginx(即服務名稱),最後輸入x退出即可。