Freigeben über


IBackgroundCopyJob::SetProxySettings-Methode (bits.h)

Gibt an, welcher Proxy zum Übertragen von Dateien verwendet werden soll.

Syntax

HRESULT SetProxySettings(
  [in] BG_JOB_PROXY_USAGE ProxyUsage,
  [in] const WCHAR        *ProxyList,
  [in] const WCHAR        *ProxyBypassList
);

Parameter

[in] ProxyUsage

Gibt an, ob die Proxyeinstellungen des Benutzers, kein Proxy oder anwendungsspezifische Proxyeinstellungen verwendet werden sollen. Standardmäßig werden die Proxyeinstellungen des Benutzers verwendet, BG_JOB_PROXY_USAGE_PRECONFIG. Eine Liste der Proxyoptionen finden Sie in der BG_JOB_PROXY_USAGE-Enumeration .

[in] ProxyList

Null-beendete Zeichenfolge, die die Proxys enthält, die zum Übertragen von Dateien verwendet werden sollen. Die Liste ist leergetrennt. Ausführliche Informationen zum Angeben eines Proxys finden Sie unter Hinweise.

Dieser Parameter muss NULL sein, wenn der Wert von ProxyUsageBG_JOB_PROXY_USAGE_PRECONFIG, BG_JOB_PROXY_USAGE_NO_PROXY oder BG_JOB_PROXY_USAGE_AUTODETECT ist.

Die Länge der Proxyliste ist auf 4.000 Zeichen beschränkt, ohne den NULL-Abschlussator.

[in] ProxyBypassList

Null-terminierte Zeichenfolge, die eine optionale Liste von Hostnamen, IP-Adressen oder beides enthält, die den Proxy umgehen können. Die Liste ist leergetrennt. Ausführliche Informationen zum Angeben eines Umgehungsproxys finden Sie unter Hinweise.

Dieser Parameter muss NULL sein, wenn der Wert von ProxyUsageBG_JOB_PROXY_USAGE_PRECONFIG, BG_JOB_PROXY_USAGE_NO_PROXY oder BG_JOB_PROXY_USAGE_AUTODETECT ist.

Die Länge der Proxyumgehungsliste ist auf 4.000 Zeichen beschränkt, ohne den NULL-Abschlussator.

Rückgabewert

Diese Methode gibt die folgenden HRESULT-Werte sowie andere zurück.

Rückgabecode Beschreibung
S_OK
Proxy wurde erfolgreich angegeben.
E_NOTIMPL
Der Wert für ProxyUsage ist in der BG_JOB_PROXY_USAGE-Enumeration nicht definiert.
BG_E_PROXY_LIST_TOO_LARGE
Der pProxyList-Puffer darf 32 KB nicht überschreiten.
BG_E_PROXY_BYPASS_LIST_TOO_LARGE
Die pProxyBypassList darf 32 KB nicht überschreiten.
BG_E_INVALID_STATE
Der Status des Auftrags kann nicht BG_JOB_STATE_CANCELLED oder BG_JOB_STATE_ACKNOWLEDGED werden.
E_INVALIDARG
Der pProxyList-Parameter kann NICHT NULL sein, wenn ProxyUsageBG_JOB_PROXY_USAGE_OVERRIDE ist.

Hinweise

Die von Ihnen bereitgestellten Proxyinformationen werden zur Laufzeit überprüft. Wenn die Proxyinformationen ungültig sind, tritt der Auftrag mit einem BG_E_INVALID_PROXY_INFO Fehlercode in den BG_JOB_STATE_ERROR Zustand ein.

Wenn Ihr Dienst als LocalSystem ausgeführt wird, sollten Sie die SetProxySettings-Methode verwenden, um explizit eine Proxy- oder Proxyumgehungsliste für das Konto anzugeben und ProxyUsage auf BG_JOB_PROXY_USAGE_OVERRIDE festzulegen. Weitere Informationen zur Verwendung von Systemkonten mit BITS finden Sie unter Dienstkonten und BITS.

BITS erkennt die Proxyeinstellungen nicht, die mithilfe der Proxycfg.exe-Datei festgelegt werden.

Geben Sie einen Proxy als an:

"[protocol=][protocol"://"]server[":"port]"

Die gültigen Protokolle sind HTTP und HTTPS. Die Proxyliste kann die Portnummer enthalten, die für den Zugriff auf den Proxy verwendet wird. Um beispielsweise einen HTTP-Proxy aufzulisten, lautet eine gültige Zeichenfolge "http=http://http_proxy_name:80", wobei http_proxy_name der Name des Proxyservers und 80 die Portnummer ist, die Sie für den Zugriff auf den Proxy verwenden müssen. Wenn der Proxy die Standardportnummer für dieses Protokoll verwendet, können Sie die Portnummer weglassen. Wenn ein Proxyname allein aufgeführt ist, können Sie ihn als Standardproxy für alle Protokolle verwenden, die keinen angegebenen Proxy haben. Beispielsweise verwendet "http=http://http_proxyother_proxy" http_proxy für alle HTTP-Vorgänge, während das HTTPS-Protokoll den Proxy mit dem Namen other_proxy verwendet.

Sie können lokal bekannte Hostnamen oder IP-Adressen (Internet Protocol) in der Proxyumgehungsliste auflisten. Dieser Name kann Platzhalter wie "" enthalten, die dazu führen, dass die Anwendung den Proxyserver für Adressen umgeht, die dem angegebenen Muster entsprechen, z. B. ".microsoft.com" oder ".org". Feldhalterzeichen müssen die meisten Zeichen im Namen sein. Beispiel: "aaa." wird nicht unterstützt. Sie können das <lokale> Makro angeben, um anzugeben, dass alle lokalen Intranetwebsites umgangen werden. Lokale Intranetwebsites gelten als alle Server, die keinen Punkt in ihrem Namen enthalten.

BITS verwendet die Internet-Explorer Proxyeinstellungen des Benutzers, wenn eine Anwendung keine Proxyverwendung angibt. Dieses Standardverhalten funktioniert in der Regel, wenn die Anwendung den Auftrag im Kontext eines interaktiven Benutzers übermittelt, aber möglicherweise nicht funktioniert, wenn ein Dienst, der als LocalSystem ausgeführt wird, den Auftrag übermittelt. Sie können Internet Explorer Proxyeinstellungen für LocalSystem angeben. Es ist jedoch schwierig, diese Einstellungen zu erkennen, wenn Probleme auftreten.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP
Unterstützte Mindestversion (Server) Windows Server 2003
Zielplattform Windows
Kopfzeile bits.h
Bibliothek Bits.lib
DLL QmgrPrxy.dll

Weitere Informationen

BG_JOB_PROXY_USAGE

IBackgroundCopyJob::GetProxySettings