@ECHO off
:感謝"nps內網穿透交流2群"成員"新安?任松"提供的源腳本
:吳諾克在源腳本的基礎做了一些優化:
:用戶可在輸入窗口中輸入NPS服務端信息、vkey信息;安裝過程中提示當前正在安裝的客戶端版本、NPS服務端信息;安裝后會彈出窗口提示安裝完成、客戶端vkey信息
:https://douzi.link
:https://cnblogs.com/douzilink
title "權限受限,請使用管理員權限!"
mode con cols=80 lines=20
color 2
CLS
:init
setlocal DisableDelayedExpansion
set "batchPath=%~0"
for %%k in (%0) do set batchName=%%~nk
set "vbsGetPrivileges=%temp%\OEgetPriv_%batchName%.vbs"
setlocal EnableDelayedExpansion
:checkPrivileges
NET FILE 1>NUL 2>NUL
if '%errorlevel%' == '0' (
goto gotPrivileges
) else (
goto getPrivileges
)
:getPrivileges
title "請求 UAC 權限"
if '%1'=='ELEV' (ECHO ELEV & shift /1 & goto gotPrivileges)
ECHO.
ECHO ********************************
ECHO 請求 UAC 權限批准
ECHO 請點擊“是”
ECHO ********************************
ECHO Set UAC = CreateObject^("Shell.Application"^) > "%vbsGetPrivileges%"
ECHO args = "ELEV " >> "%vbsGetPrivileges%"
ECHO For Each strArg in WScript.Arguments >> "%vbsGetPrivileges%"
ECHO args = args ^& strArg ^& " " >> "%vbsGetPrivileges%"
ECHO Next >> "%vbsGetPrivileges%"
ECHO UAC.ShellExecute "!batchPath!", args, "", "runas", 1 >> "%vbsGetPrivileges%"
"%SystemRoot%\System32\WScript.exe" "%vbsGetPrivileges%" %*
exit /B
:gotPrivileges
setlocal & pushd .
cd /d %~dp0
if '%1'=='ELEV' (del "%vbsGetPrivileges%" 1>nul 2>nul & shift /1)
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: 安裝過程 ::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:--------------------------------------
title "正在安裝NPC服務"
echo 正在安裝的客戶端版本為:
npc.exe -version
set "starttime=%time%"
ECHO **********************************
set /p Servaddr=請輸入服務端地址和端口:
echo 客戶端連接密鑰就是-vkey=后面的內容
echo ----------------------↓
set /p Srcpath=請輸入客戶端連接密鑰:
ECHO **********************************
echo 正在安裝內網穿透服務
npc.exe install -server=%Servaddr% -vkey=%Srcpath% -type=tcp start=auto -auto_reconnection=true
echo 正在啟動內網穿透服務
echo 服務端地址為 %Servaddr%
net start nps內網穿透客戶端
del npc-update.exe /q
echo 啟動完成
(echo 安裝完成!&客戶端密鑰:%Srcpath%&echo 點擊"確定"關閉安裝程序 )|msg *
:pause
exit
引用&參考:
[1]什么是NPS?
NPS一款輕量級、高性能、功能強大的內網穿透代理服務,NPC是NPS的客戶端.
具體可以轉到https://ehang-io.github.io/nps/#/查看詳情;