2016-08-15 78 views
2

我在Windows上,我寫了一個腳本,它將通過更改註冊表中的值來切換Internet選項的代理設置。我可以確認代理服務器設置已成功更改,但Chrome並沒有立即提取新代理服務器,我使用chrome://net-internals/#proxy此鏈接進行檢查,代理服務器設置將保持最後一次設置幾分鐘。幾分鐘後,它會刷新到新的代理設置。只有在那之後,我才能正確訪問互聯網頁面。爲什麼chrome不能立即獲取我的代理設置?

雖然Internet Explorer將立即使用新的代理設置。爲什麼會發生?我怎樣才能立即使鉻刷新代理設置?

我的Chrome版本爲:52.0.2743.116米

回答

1

的問題是,如果你直接更改註冊表值,那麼這些變化將不會通知到其他程序,如:鉻。

所以解決方案是:通知互聯網更改所有程序。

我寫的劇本是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")

希望這會有所幫助。

相關問題