我有两个.bat
文件可通过注册表启用和禁用代理:
reg添加“ HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet 设置” / v ProxyEnable / t REG_DWORD / d 1 / f
reg添加“ HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet 设置” / v ProxyEnable / t REG_DWORD / d 0 / f
但是,使它们起作用的唯一方法是打开“ Internet选项”并打开“ LAN设置”选项卡。
进行了更改,但是好像没有应用/保存更改。
有没有一种方法可以通过命令等来实现?
答案 0 :(得分:3)
要在注册表中应用更改以从命令行在Internet Explorer中启用和禁用代理,您有两种方法。
第一种方式:
1-以管理员身份运行命令行
2- 终止 Internet Explorer 之前。
Taskkill /F /IM iexplore.exe
3-像问题中一样更改注册表启用或禁用代理。
第二种方式:
1-以管理员身份运行命令行
2-像问题中一样更改代理启用/禁用
3- 终止 Windows资源管理器,然后在您更改注册表已经
taskkill /F /IM explorer.exe && start /w /b explorer.exe
答案 1 :(得分:0)
在我的情况下,Internet Explorer 被禁用,因此无法首先终止 iexplore.exe,因为它没有运行,并且每次都重新启动 explorer.exe 是不可取的。但我发现至少在 Windows 7 代理设置中,当您在 Internet 选项中的“LAN 设置”窗口中单击“确定”时会刷新。
由于我无法使用命令提示符找到任何其他方法来执行此操作,因此我编写了一个简单的 AutoHotkey 脚本,该脚本会自动单击所有必需的按钮。唯一的缺点是,这种情况发生在前台,改变了窗口焦点,我知道没有办法最小化或隐藏这一点。
在运行/命令提示符中输入或添加到 bat 文件以打开 Internet 选项窗口:
control /name Microsoft.InternetOptions
在打开 Internet 选项窗口之前运行此 AHK 脚本,因为脚本会等待窗口出现并且如果窗口已经存在则可能无法运行:
; wait for 'Internet Options' window to appear
WinWait, Internet Properties
; delays should account for any interface lag. Increase them if you find them insufficient for your particular case
Sleep 100
; focus on 'Internet Options' window, just in case focus is stolen by other window
WinWaitActive, Internet Properties
Sleep, 50
; hold Ctrl and press Tab 4 times to switch to 'Connections' tab
Send {Ctrl down}{tab 4}{Ctrl up}
Sleep, 250
; press Alt+l (keyboard shortcut for 'LAN Settings'). Change this if your system/user locale differs from English
send !l
Sleep, 500
; pressing enter here clicks OK in 'LAN settings' window, closing it. Using 'ControlClick OK' here results in AHK pressing OK button of the parent window instead to no effect
send {enter}
Sleep, 250
; click OK
ControlClick OK
return