WinHttpGetProxyForUrl-Funktion (winhttp.h)

Die WinHttpGetProxyForUrl-Funktion ruft die Proxydaten für die angegebene URL ab.

Syntax

WINHTTPAPI BOOL WinHttpGetProxyForUrl(
  [in]  HINTERNET                 hSession,
  [in]  LPCWSTR                   lpcwszUrl,
  [in]  WINHTTP_AUTOPROXY_OPTIONS *pAutoProxyOptions,
  [out] WINHTTP_PROXY_INFO        *pProxyInfo
);

Parameter

[in] hSession

Das winHTTP-Sitzungshandle, das von der WinHttpOpen-Funktion zurückgegeben wird.

[in] lpcwszUrl

Ein Zeiger auf eine Unicode-Zeichenfolge mit Null-Beendigung, die die URL der HTTP-Anforderung enthält, die die Anwendung gerade sendet.

[in] pAutoProxyOptions

Ein Zeiger auf eine WINHTTP_AUTOPROXY_OPTIONS-Struktur , die die zu verwendenden Autoproxyoptionen angibt.

[out] pProxyInfo

Ein Zeiger auf eine WINHTTP_PROXY_INFO-Struktur , die die Proxyeinstellung empfängt. Diese Struktur wird dann mithilfe der Option WINHTTP_OPTION_PROXY auf das Anforderungshandle angewendet. Geben Sie die Zeichenfolgen lpszProxy und lpszProxyBypass in dieser Struktur (wenn sie nicht NULL sind) mithilfe der GlobalFree-Funktion frei.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion TRUE zurück.

Wenn die Funktion fehlschlägt, gibt sie FALSE zurück. Rufen Sie GetLastError auf, um erweiterte Fehlerdaten zu erhalten.

Mögliche Fehlercodes sind folgende.

Fehlercode BESCHREIBUNG
ERROR_WINHTTP_AUTO_PROXY_SERVICE_ERROR
Wird von WinHttpGetProxyForUrl zurückgegeben, wenn kein Proxy für die angegebene URL gefunden werden kann.
ERROR_WINHTTP_BAD_AUTO_PROXY_SCRIPT
Fehler beim Ausführen des Skriptcodes in der PAC-Datei (Proxy Auto-Configuration).
ERROR_WINHTTP_INCORRECT_HANDLE_TYPE
Der Typ des angegebenen Handles ist für diesen Vorgang falsch.
ERROR_WINHTTP_INTERNAL_ERROR
Ein interner Fehler ist aufgetreten.
ERROR_WINHTTP_INVALID_URL
Die URL ist ungültig.
ERROR_WINHTTP_LOGIN_FAILURE
Fehler beim Anmeldeversuch. Wenn dieser Fehler auftritt, schließen Sie das Anforderungshandle mit WinHttpCloseHandle. Ein neues Anforderungshandle muss erstellt werden, bevor sie die Funktion wiederholen, die ursprünglich diesen Fehler verursacht hat.
ERROR_WINHTTP_OPERATION_CANCELLED
Der Vorgang wurde abgebrochen, in der Regel, weil der Handle, an dem die Anforderung ausgeführt wurde, vor Abschluss des Vorgangs geschlossen wurde.
ERROR_WINHTTP_UNABLE_TO_DOWNLOAD_SCRIPT
Die PAC-Datei konnte nicht heruntergeladen werden. Beispielsweise war der Server, auf den von der PAC-URL verwiesen wird, möglicherweise nicht erreichbar, oder der Server hat eine 404 NOT FOUND-Antwort zurückgegeben.
ERROR_WINHTTP_UNRECOGNIZED_SCHEME
Die URL der PAC-Datei hat ein anderes Schema als "http:" oder "https:" angegeben.
ERROR_NOT_ENOUGH_MEMORY
Für den angeforderten Vorgang war nicht genügend Arbeitsspeicher verfügbar. (Windows-Fehlercode)

Hinweise

Diese Funktion implementiert das WPAD-Protokoll (Web Proxy Auto-Discovery) zum automatischen Konfigurieren der Proxyeinstellungen für eine HTTP-Anforderung. Das WPAD-Protokoll lädt eine PAC-Datei (Proxy Auto-Configuration) herunter. Hierbei handelt es sich um ein Skript, das den Proxyserver identifiziert, der für eine bestimmte Ziel-URL verwendet werden soll. PAC-Dateien werden in der Regel von der IT-Abteilung innerhalb einer Unternehmensnetzwerkumgebung bereitgestellt. Die URL der PAC-Datei kann entweder explizit angegeben oder WinHttpGetProxyForUrl angewiesen werden, den Speicherort der PAC-Datei im lokalen Netzwerk automatisch zu ermitteln.

WinHttpGetProxyForUrl unterstützt nur ECMAScript-basierte PAC-Dateien.

WinHttpGetProxyForUrl muss auf URL-Basis aufgerufen werden, da die PAC-Datei einen anderen Proxyserver für unterschiedliche URLs zurückgeben kann. Dies ist nützlich, da die PAC-Datei es einer IT-Abteilung ermöglicht, einen Proxyserverlastenausgleich zu implementieren, indem die Ziel-URL (durch den Parameter lpcwszUrl angegeben) einem bestimmten Proxy in einem Proxyserverarray zugeordnet (Hashing) zugeordnet wird.

WinHttpGetProxyForUrl speichert die Autoproxy-URL und das Autoproxyskript zwischen, wenn die automatische Ermittlung im dwFlags-Member der pAutoProxyOptions-Struktur angegeben ist. Weitere Informationen finden Sie unter Autoproxy-Cache.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP, Windows 2000 Professional mit SP3 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003, Windows 2000 Server mit SP3 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winhttp.h
Bibliothek Winhttp.lib
DLL Winhttp.dll

Weitere Informationen

WinHTTP-Versionen