【发布时间】:2011-05-31 19:29:50
【问题描述】:
我正在使用WinHttpGetIEProxyConfigForCurrentUser 和朋友来收集当前代理信息,当我的应用程序开始这样做之前,每个请求似乎都会大大降低性能,因为它需要等待几秒钟来收集代理数据。有没有办法检测 Windows 代理设置何时发生变化,以便我可以缓存信息直到它发生变化?
谢谢, J
【问题讨论】:
-
没有支持的 API 来检测 WinINET 中的代理设置更改;该代码在共享内存缓存数据库中内部设置了一个标志,所有 WinINET 客户端都会在后续请求中获取该标志,但不会为其他客户端显示任何通知。按照 Luke 的建议,查看注册表项将适用于某些场景(例如 LAN 代理),但不适用于其他场景(例如 VPN 附加/分离)。您看到的延迟可能是在用户选择了“自动检测”并且 WPAD 算法在您的代码中运行时发生的。
标签: c++ windows internet-explorer winapi