检测Windows(IE)代理设置更改

我使用WinHttpGetIEProxyConfigForCurrentUser和朋友收集当前的代理信息,当我的应用程序启动时,在每个请求看起来会大大降低性能,因为它坐几秒钟收集代理数据。 有没有一种方法来检测Windows代理设置何时更改,以便我可以caching信息,直到它更改?

谢谢,J

Solutions Collecting From Web of "检测Windows(IE)代理设置更改"

不知道是否有更好的方法,但你总是可以采取核选项,并使用HKEY_LOCAL_MACHINE \ SOFTWARE \微软\的Windows \ CurrentVersion \互联网设置RegNotifyChangeKeyValue。

你可以在应用程序启动时在后台线程中运行检测吗?

我没有发现有关WinHttpGetIEProxyConfigForCurrentUser 不能从非主UI线程内调用。

如果应用程序需要WinHttpGetIEProxyConfigForCurrentUser的结果比后台线程返回更快,则可以使其再次阻塞,直到后台线程完成。

我不确定是否使用代理设置更改生成,但可能会有WM_SETTINGCHANGE消息,您可以处理。