指定要用于传输文件的代理。
Syntax
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
包含用于传输文件的代理的以 Null 结尾的字符串。 列表以空格分隔。 有关指定代理的详细信息,请参阅“备注”。
如果 ProxyUsage 的值BG_JOB_PROXY_USAGE_PRECONFIG、BG_JOB_PROXY_USAGE_NO_PROXY或BG_JOB_PROXY_USAGE_AUTODETECT,则此参数必须为 NULL。
代理列表的长度限制为 4,000 个字符,不包括 null 终止符。
[in] ProxyBypassList
以 Null 结尾的字符串,其中包含可以绕过代理的主机名、IP 地址或两者可选列表。 列表以空格分隔。 有关指定绕过代理的详细信息,请参阅“备注”。
如果 ProxyUsage 的值BG_JOB_PROXY_USAGE_PRECONFIG、BG_JOB_PROXY_USAGE_NO_PROXY或BG_JOB_PROXY_USAGE_AUTODETECT,则此参数必须为 NULL。
代理绕过列表的长度限制为 4,000 个字符,不包括 null 终止符。
返回值
此方法返回以下 HRESULT 值以及其他值。
| 返回代码 | Description |
|---|---|
|
已成功指定代理。 |
|
ProxyUsage 的值未在BG_JOB_PROXY_USAGE枚举中定义。 |
|
pProxyList 缓冲区不能超过 32 KB。 |
|
pProxyBypassList 不能超过 32 KB。 |
|
作业的状态不能 BG_JOB_STATE_CANCELLED 或 BG_JOB_STATE_ACKNOWLEDGED。 |
|
如果 ProxyUsageBG_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_proxy other_proxy”对任何 HTTP作使用http_proxy,而 HTTPS 协议使用名为other_proxy的代理。
可以在代理绕过列表中列出本地已知主机名或 Internet 协议 (IP) 地址。 此名称可以包含通配符(如“”),导致应用程序绕过代理服务器,以获取适合指定模式的地址,例如“.microsoft.com”或“.org”。通配符必须是名称中最左侧的字符。例如,“aaa”。不支持。 可以指定 <本地> 宏以指示绕过所有本地 Intranet 站点。 本地 Intranet 站点被视为名称中不包含句点的所有服务器。
如果应用程序未指定代理使用情况,BITS 将使用用户的 Internet Explorer 代理设置。 如果应用程序在交互式用户的上下文中提交作业,但当作为 LocalSystem 运行的服务提交作业时,此默认行为通常有效。 可以为 LocalSystem 指定 Internet Explorer 代理设置;但是,在出现问题时很难检测这些设置。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows XP |
| 支持的最低服务器 | Windows Server 2003 |
| 目标平台 | Windows操作系统 |
| Header | bits.h |
| Library | Bits.lib |
| DLL | QmgrPrxy.dll |