WinHttpGetDefaultProxyConfiguration 函式 (winHTTP.h)
WinHttpGetDefaultProxyConfiguration 函式會從登錄擷取預設的 WinHTTP Proxy 組態。
語法
WINHTTPAPI BOOL WinHttpGetDefaultProxyConfiguration(
[in, out] WINHTTP_PROXY_INFO *pProxyInfo
);
參數
[in, out] pProxyInfo
接收預設 Proxy 組態之類型 之變數的指標WINHTTP_PROXY_INFO 。
傳回值
如果成功或 FALSE,則傳回 TRUE 。否則傳回 TRUE 。 若要擷取特定錯誤訊息,請呼叫 GetLastError。 傳回的錯誤碼包括下列專案。
錯誤碼 | 描述 |
---|---|
|
發生內部錯誤。 |
|
記憶體不足,無法完成要求的作業。 (Windows 錯誤碼) |
備註
WinHttpGetDefaultProxyConfiguration 會擷取 WinHttpSetDefaultProxyConfiguration 或 ProxyCfg.exe所設定的 Proxy 組態。
呼叫 WinHttpSetOption 並指定 WINHTTP_OPTION_PROXY 旗標,即可覆寫 WinHTTP 會話的預設 Proxy 組態。
WinHttpGetDefaultProxyConfiguration 不會擷取目前會話的設定。 它會擷取登錄中指定的組態。
如果登錄包含 Proxy 伺服器清單,pProxyInfo 的 dwAccessType 成員會設定為 WINHTTP_ACCESS_TYPE_NAMED_PROXY。 否則,它會設定為 WINHTTP_ACCESS_TYPE_NO_PROXY。
WinHttpGetDefaultProxyConfiguration 會為 pProxyInfo 的字串成員配置記憶體。 若要釋放此記憶體,請呼叫 GlobalFree。
即使 WinHTTP 用於異步模式 (亦即,在 WinHttpOpen) 中設定WINHTTP_FLAG_ASYNC時,此函式仍會同步運作。 傳回值表示成功或失敗。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
範例
下列程式代碼範例示範如何從登錄擷取預設 Proxy 組態。
WINHTTP_PROXY_INFO proxyInfo;
// Retrieve the default proxy configuration.
WinHttpGetDefaultProxyConfiguration( &proxyInfo );
// Display the proxy servers and free memory
// allocated to this string.
if (proxyInfo.lpszProxy != NULL)
{
printf("Proxy server list: %S\n", proxyInfo.lpszProxy);
GlobalFree( proxyInfo.lpszProxy );
}
// Display the bypass list and free memory
// allocated to this string.
if (proxyInfo.lpszProxyBypass != NULL)
{
printf("Proxy bypass list: %S\n", proxyInfo.lpszProxyBypass);
GlobalFree( proxyInfo.lpszProxyBypass );
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP、Windows 2000 Professional 與 SP3 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003、Windows 2000 Server 與 SP3 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | winhttp.h |
程式庫 | Winhttp.lib |
Dll | Winhttp.dll |
可轉散發套件 | Windows XP 和 Windows 2000 上的 WinHTTP 5.0 和 Internet Explorer 5.01 或更新版本。 |