我在Windows上,我编写了一个脚本,它将通过更改注册表中的值来切换Internet选项的代理设置。我可以确认代理设置已成功更改,但Chrome没有立即获取新代理,我使用chrome://net-internals/#proxy
此链接进行检查,代理设置将保留为几分钟的最后一次设置。几分钟后,它将刷新到新的代理设置。只有在那之后,我才能正确访问互联网页面。
Internet Explorer将立即使用新的代理设置。为什么会这样?如何立即进行chrome刷新代理设置?
我的chrome版本是:52.0.2743.116 m
答案 0 :(得分:1)
问题是如果您直接更改注册表值,那么这些更改将不会通知其他程序,例如:chrome。
所以解决方案是:通知互联网对所有程序的更改。
我写的脚本是autohotkey脚本,所以我在这里找到解决方案: https://autohotkey.com/board/topic/19498-internet-explorer-windows-proxy-function/
在脚本中,触发通知的语句是:
dllcall("wininet\InternetSetOptionW","int","0","int","39","int","0","int","0")
dllcall("wininet\InternetSetOptionW","int","0","int","37","int","0","int","0")
希望这会有所帮助。