指定使用哪個代理伺服器傳輸檔案。
語法
HRESULT SetProxySettings(
[in] BG_JOB_PROXY_USAGE ProxyUsage,
[in] const WCHAR *ProxyList,
[in] const WCHAR *ProxyBypassList
);
參數
[in] ProxyUsage
指定是否使用使用者的代理設定、不使用代理,或使用應用程式指定的代理設定。 預設是使用使用者的代理設定, BG_JOB_PROXY_USAGE_PRECONFIG。 關於代理選項的列表,請參見 BG_JOB_PROXY_USAGE 列舉。
[in] ProxyList
空終止字串,包含用於傳輸檔案的代理。 這份清單有篇幅限制。 關於指定代理的細節,請參見備註。
若 ProxyUsage 的值為 BG_JOB_PROXY_USAGE_PRECONFIG、BG_JOB_PROXY_USAGE_NO_PROXY 或 BG_JOB_PROXY_USAGE_AUTODETECT,則該參數必須為 NULL。
代理清單長度限制為 4,000 字元,不含 null 終止符。
[in] ProxyBypassList
空終止字串,包含可選的主機名稱、IP 位址或兩者清單,可繞過代理伺服器。 這份清單有篇幅限制。 關於指定繞過代理的詳細資訊,請參見備註。
若 ProxyUsage 的值為 BG_JOB_PROXY_USAGE_PRECONFIG、BG_JOB_PROXY_USAGE_NO_PROXY 或 BG_JOB_PROXY_USAGE_AUTODETECT,則該參數必須為 NULL。
代理繞過清單的長度限制為 4,000 個字元,不包含空終端器。
返回值
此方法回傳以下 HRESULT 值及其他值。
| 回傳碼 | Description |
|---|---|
|
代理已成功指定。 |
|
ProxyUsage 的值在BG_JOB_PROXY_USAGE列舉中未定義。 |
|
pProxyList 緩衝區不得超過 32 KB。 |
|
pProxyBypassList 不得超過 32 KB。 |
|
工作狀態無法 BG_JOB_STATE_CANCELLED 或 BG_JOB_STATE_ACKNOWLEDGED。 |
|
如果 ProxyUsage 是 BG_JOB_PROXY_USAGE_OVERRIDE,pProxyList 參數就不能是 NULL。 |
備註
你提供的代理資訊會在執行時被驗證。 若代理資訊無效,工作會進入 BG_JOB_STATE_ERROR 狀態並顯示 BG_E_INVALID_PROXY_INFO 錯誤碼。
如果你的服務是以 LocalSystem 執行,你應該使用 SetProxySettings 方法,明確指定該帳號的代理或代理繞過清單,並將 ProxyUsage 設為 BG_JOB_PROXY_USAGE_OVERRIDE。 欲了解更多關於在 BITS 中使用系統帳號的資訊,請參閱 服務帳號與 BITS。
BITS 無法辨識使用 Proxycfg.exe 檔案設定的代理設定。
指定代理為:
“[protocol=][protocol”://“]server[”:port]”
有效的協議是 HTTP 和 HTTPS。 代理清單可以包含用於存取代理的埠號。 例如,要列出 HTTP 代理,有效的字串是「http=http://http_proxy_name:80」,其中 http_proxy_name 是代理伺服器名稱,80 是你必須使用的埠號,才能存取代理伺服器。 如果代理使用該協定的預設埠號,那你可以省略埠號。 如果代理名稱單獨列出,你可以將其作為任何沒有指定代理的協定的預設代理。 例如,「http=http://http_proxyother_proxyhttp_proxy 」用於任何 HTTP 操作,而 HTTPS 協定則使用名為 other_proxy 的代理。
你可以在代理繞過清單中列出本地已知的主機名稱或網際協定(IP)位址。 此名稱可包含通配字,如「」,導致應用程式繞過代理伺服器,取得符合特定模式的位址,例如「.microsoft.com」或「.org」。萬用字元必須是名稱中最左邊的字元。例如,「aaa」。不支援。 你可以指定 <本地> 巨集,表示所有本地內聯網站點都被繞過。 本地內聯網網站被視為所有名稱中不包含句號的伺服器。
如果應用程式未指定代理使用方式,BITS 會使用使用者的 Internet Explorer 代理設定。 此預設行為通常適用於應用程式在互動使用者的情境下提交工作,但若以 LocalSystem 身份執行的服務提交工作,則可能無法運作。 你可以為 LocalSystem 指定 Internet Explorer 代理設定;然而,當問題發生時,這些設定很難被偵測到。
需求
| Requirement | 價值觀 |
|---|---|
| 最低支援的用戶端 | 視窗XP |
| 支援的最低伺服器 | Windows Server 2003 |
| 目標平臺 | 窗戶 |
| Header | Bits.h |
| Library | Bits.lib |
| DLL | QmgrPrxy.dll |