1、工具軟件
instsrv.exe 和 srvany.exe,下載:https://pan.baidu.com/s/1PI6qMjdVkuYyjRLokt7xRw 密碼:fc1o
2、編輯 bat
bat代碼示例:
@echo
:a
python transfer.py
ping 127.0.0.1 -n 60 >nul
goto a
3、命令方式增加服務
服務名稱 暫擬為 Transfer,管理員權限下的cmd 命令,格式:instsrv.exe 服務名 srvany.exe
舉例:D:\instsrv.exe Transfer D:\srvany.exe
4、修改服務參數
(1)打開注冊表(win+r運行regedit)
查找路徑:HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Transfer
(2)Transfer服務增加子項 Parameters
(3)給子項 Parameters 增加兩個字符串類型的參數 AppDirectory 和 Application,並指定參數值
本例中
AppDirectory = "D:\Coding\transfer"(程序所在文件主路徑)
Application = "D:\Coding\transfer\transfer.bat"(程序運行的bat路徑)
5、查看服務列表,並啟動 Transfer 服務
查看服務列表(win+r運行services.msc),啟動 Transfer 服務
6、移除相關服務
管理員權限下的cmd 命令,格式:instsrv.exe 服務名 remove
舉例:D:\instsrv.exe Transfer remove
7、懶人必備
批處理實現服務自動增加和參數修改
拷貝一下內容,並按需修改路徑和服務名,寫入bat,執行下就好
@echo off
echo 獲取Administrator權限
cacls.exe "%SystemDrive%\System Volume Information" >nul 2>nul
if %errorlevel%==0 goto Admin
if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"
echo Set RequestUAC = CreateObject^("Shell.Application"^)>"%temp%\getadmin.vbs"
echo RequestUAC.ShellExecute "%~s0","","","runas",1 >>"%temp%\getadmin.vbs"
echo WScript.Quit >>"%temp%\getadmin.vbs"
"%temp%\getadmin.vbs" /f
if exist "%temp%\getadmin.vbs" del /f /q "%temp%\getadmin.vbs"
exit
:Admin
echo 成功取得Administrator權限
D:\instsrv.exe Transfer D:\srvany.exe
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aimaService3\Parameters
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Transfer\Parameters /v AppDirectory /d "D:\Coding\transfer" /t reg_sz /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Transfer\Parameters /v Application /d "D:\Coding\transfer\transfer.bat" /t reg_sz /f
參考資料
https://jingyan.baidu.com/article/cd4c29791c5a16756e6e60a7.html