共用方式為


WinHttpSetDefaultProxyConfiguration 函式 (winHTTP.h)

重要

WinHttpSetDefaultProxyConfiguration 在 Windows 8.1 和更新版本上已被取代。 WinHttpSetDefaultProxyConfiguration 不支援大部分的 Proxy 組態,也不支援 Proxy 驗證。 請改用 WINHTTP_ACCESS_TYPE_AUTOMATIC_PROXY 搭配 WinHttpOpen

WinHttpSetDefaultProxyConfiguration 函式會在登錄中設定預設的 WinHTTP Proxy 組態。

語法

WINHTTPAPI BOOL WinHttpSetDefaultProxyConfiguration(
  [in] WINHTTP_PROXY_INFO *pProxyInfo
);

參數

[in] pProxyInfo

指定預設 Proxy 組態之類型 變數的指標WINHTTP_PROXY_INFO

傳回值

如果成功,則傳回 TRUE ,否則傳回 FALSE 。 如需擴充錯誤資訊,請呼叫 GetLastError。 傳回的錯誤碼如下。

錯誤碼 描述
ERROR_WINHTTP_INTERNAL_ERROR
發生內部錯誤。
ERROR_NOT_ENOUGH_MEMORY
記憶體不足,無法完成要求的作業。 (Windows 錯誤碼)

備註

WinHttpSetDefaultProxyConfiguration 所設定的預設 Proxy 組態可以呼叫 WinHttpSetOption 並指定WINHTTP_OPTION_PROXY旗標,覆寫現有的 WinHTTP 會話。 使用 WinHttpOpen 函式指定組態,即可覆寫新會話的預設 Proxy 組態。

如果指定 Proxy,pProxyInfo 所指向之WINHTTP_PROXY_INFO結構的 dwAccessType 成員應該設定為 WINHTTP_ACCESS_TYPE_NAMED_PROXY。 否則,它應該設定為 WINHTTP_ACCESS_TYPE_DEFAULT_PROXY

呼叫此函式之後建立的任何新會話都使用新的預設 Proxy 組態。

即使 WinHTTP 用於異步模式 (亦即,在 WinHttpOpen) 中設定WINHTTP_FLAG_ASYNC時,此函式仍會同步運作。 傳回值表示成功或失敗。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

注意 針對 Windows XP 和 Windows 2000,請參閱 WinHTTP 起始頁面的 運行時間需求 一節。
 

範例

下列程式代碼範例示範如何在登錄中設定預設 Proxy 組態。

WINHTTP_PROXY_INFO proxyInfo;

// Allocate memory for string members.
proxyInfo.lpszProxy = new WCHAR[25];
proxyInfo.lpszProxyBypass = new WCHAR[25];

// Set the members of the proxy info structure.
proxyInfo.dwAccessType = WINHTTP_ACCESS_TYPE_NAMED_PROXY;
swprintf_s(proxyInfo.lpszProxy, 25, L"proxy_server");
swprintf_s(proxyInfo.lpszProxyBypass, 25, L"<local>");

// Set the default proxy configuration.
if (WinHttpSetDefaultProxyConfiguration( &proxyInfo ))
    printf("Proxy Configuration Set.\n");

// Free memory allocated to the strings.
delete [] proxyInfo.lpszProxy;
delete [] 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 或更新版本。

另請參閱

WinHTTP 版本

WinHttpGetDefaultProxyConfiguration