WinHttpGetIEProxyConfigForCurrentUser 函数 (winhttp.h)

WinHttpGetIEProxyConfigForCurrentUser 函数检索当前用户的 Internet Explorer 代理配置。

语法

WINHTTPAPI BOOL WinHttpGetIEProxyConfigForCurrentUser(
  [in, out] WINHTTP_CURRENT_USER_IE_PROXY_CONFIG *pProxyConfig
);

参数

[in, out] pProxyConfig

输入上的指针,指向 WINHTTP_CURRENT_USER_IE_PROXY_CONFIG 结构。 在输出中,结构包含当前活动网络连接的 Internet Explorer 代理设置, (例如 LAN、拨号或 VPN 连接) 。

返回值

如果成功,则返回 TRUE ,否则返回 FALSE 。 有关扩展的错误信息,请调用 GetLastError。 返回的错误代码如下。

错误代码 说明
ERROR_FILE_NOT_FOUND
找不到 Internet Explorer 代理设置。
ERROR_WINHTTP_INTERNAL_ERROR
发生了内部错误。
ERROR_NOT_ENOUGH_MEMORY
内存不足,无法完成请求的操作。 (Windows 错误代码)

注解

在 Internet Explorer 中,代理设置位于“工具 / Internet 选项”菜单选项选项的“连接”选项卡上。 基于每个连接配置代理设置;也就是说,LAN 连接的代理设置与拨号或 VPN 连接的代理设置是分开的。 WinHttpGetIEProxyConfigForCurrentUser 返回当前活动连接的代理设置。

此函数在网络环境中运行的客户端应用程序非常有用,其中 Web 代理自动发现 (WPAD) 协议未实现, (这意味着) 没有可用的代理自动配置文件。 如果 PAC 文件不可用,则 WinHttpGetProxyForUrl 函数失败。 WinHttpGetIEProxyConfigForCurrentUser 函数可用作回退机制,通过在 Internet Explorer 中检索用户的代理配置来发现可行的代理配置。

不应在不模拟已登录用户的服务进程中使用此函数。如果调用方未模拟登录用户,WinHTTP 会尝试检索当前服务进程的 Internet Explorer 设置:例如,本地服务或网络服务。 如果未为这些系统帐户配置 Internet Explorer 设置,则对 WinHttpGetIEProxyConfigForCurrentUser 的 调用将失败。

调用方必须在 WINHTTP_CURRENT_USER_IE_PROXY_CONFIG 结构中释放 lpszProxylpszProxyBypasslpszAutoConfigUrl 字符串(如果它们不是 NULL)。 使用 GlobalFree 释放字符串。

要求

   
最低受支持的客户端 Windows XP、Windows 2000 Professional 和 SP3 [仅限桌面应用]
最低受支持的服务器 Windows Server 2003、Windows 2000 Server SP3 [仅限桌面应用]
目标平台 Windows
标头 winhttp.h
Library Winhttp.lib
DLL Winhttp.dll

另请参阅

WinHTTP 版本