@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]什么是NPC?
NPC是NPS的客户端,NPS一款轻量级、高性能、功能强大的内网穿透代理服务,具体可以转到https://ehang-io.github.io/nps/#/查看详情;