我正在尝试使用OpenVPN创建自动连接和断开文件,除此之外,将我的WiFi适配器DNS设置为0.0.0.0(因为DNS泄漏)并恢复正常。
这是我目前的代码:
@echo off
SETLOCAL EnableExtensions
set EXE=openvpn-gui.exe
FOR /F %%x IN ('tasklist /NH /FI "IMAGENAME eq %EXE%"') DO IF %%x == %EXE% goto NOT
goto RUNS
:NOT
taskkill /im openvpn-gui.exe /f
taskkill /im openvpn.exe /f
netsh interface IPv4 set dnsserver "WiFi" dhcp
ipconfig /flushdns
exit
:RUNS
cd "C:\Program Files\OpenVPN\bin"
openvpn-gui.exe --connect "vpn-connection-file.ovpn"
netsh interface IPv4 set dnsserver "WiFi" static 0.0.0.0 both
ipconfig /flushdns
exit
我的代码的第一行检查openVPN是否正在运行,如果是,则转到RUN,否则转到NOT。
NOT结束OpenVPN并将DNS恢复正常。
RUN正在打开OpenVPN,并建立与我的配置文件的连接。
然而,在这一行之后:
openvpn-gui.exe --connect "vpn-connection-file.ovpn"
CMD不会继续使用其余代码。它停止了,白色空格键闪烁。 (不可能输入任何键或其他任何键。) 检查其余代码是否已执行为负。
有谁知道这里发生了什么?
答案 0 :(得分:2)
CMD等待openvpn-gui.exe
结束。试试start
start openvpn-gui.exe --connect "vpn-connection-file.ovpn"