hulpprogramma voor ProxyCfg.exe proxyconfiguratie
Belangrijk
ProxyCfg.exe
is afgeschaft sinds Windows Vista en Windows Server 2008. Deze wordt vervangen door Netsh.exe
(zie Netsh.exe opdrachten).
In dit onderwerp wordt het gebruik uitgelegd van het hulpprogramma Microsoft Windows HTTP Services (WinHTTP) proxyconfiguratieprogramma ProxyCfg.exe
.
Er zijn twee manieren om toegang te krijgen tot HTTP- en Secure Hypertext Transfer Protocol-servers (HTTPS) via een proxy met behulp van Microsoft Windows HTTP Services (WinHTTP). Eerst kunt u proxy-instellingen opgeven vanuit uw WinHTTP-toepassing. Ten tweede kunt u standaardproxy-instellingen van buiten uw toepassing opgeven met behulp van het proxyconfiguratiehulpprogramma in de map %windir%\system32.
U kunt de proxygegevens programmatisch instellen vanuit uw toepassing of script. Als u een toepassing schrijft met behulp van de WinHTTP-API, gebruikt u een van de volgende twee technieken om proxyinstellingen te wijzigen.
Gebruik de functie WinHttpOpen. Geef het toegangstype op in de tweede parameter, de naam van de proxy in de derde parameter en een bypasslijst in de vierde parameter. In het volgende voorbeeld ziet u hoe de functie WinHttpOpen kan worden gebruikt om proxygegevens in te stellen.
hSession = WinHttpOpen( L"WinHTTP Example/1.0", WINHTTP_ACCESS_TYPE_NAMED_PROXY, L"proxy_name", L"<local>", 0);
Gebruik de functie WinHttpSetOption. Met de vlag WINHTTP_OPTION_PROXY kunt u proxyinstellingen opgeven met een WINHTTP_PROXY_INFO structuur. In de volgende voorbeeldcode ziet u hoe de functie WinHttpSetOption- kan worden gebruikt om proxygegevens in te stellen.
WINHTTP_PROXY_INFO proxyInfo; proxyInfo.dwAccessType = WINHTTP_ACCESS_TYPE_NAMED_PROXY; proxyInfo.lpszProxy = L"proxy_name"; proxyInfo.lpszProxyBypass = L"<local>"; // Set the proxy information for this session. WinHttpSetOption( hSession, WINHTTP_OPTION_PROXY, &proxyInfo, sizeof(proxyInfo));
Als u een script of toepassing schrijft met behulp van het WinHttpRequest-object, gebruikt u de volgende techniek om proxy-instellingen te wijzigen.
Gebruik de methode SetProxy. Geef het toegangstype op in de eerste parameter, de naam van de proxy in de tweede parameter en een bypass-lijst in de derde parameter. In het volgende voorbeeld ziet u hoe de methode SetProxy kan worden gebruikt in het script om proxygegevens in te stellen.
WinHttpReq.SetProxy( HTTPREQUEST_PROXYSETTING_PROXY, "proxy_server:80", "*.microsoft.com");
Als u standaardinstellingen wilt opgeven en de methode SetProxy of de WinHttpSetOption-functie wilt gebruiken, gebruikt u het hulpprogramma voor proxyconfiguratie. Met dit hulpprogramma kunt u opgeven dat uw toepassing rechtstreeks via een proxy toegang heeft tot een netwerk of via een combinatie van directe en proxytoegang door een bypass-lijst op te geven. Wanneer u de WinHTTP-API gebruikt, bepaalt het hulpprogramma voor proxyconfiguratie alleen de instellingen wanneer u de vlag WINHTTP_ACCESS_TYPE_DEFAULT doorgeeft aan de WinHttpOpen-API. Het WinHttpRequest--object maakt standaard gebruik van de instellingen voor het hulpprogramma voor proxyconfiguratie.
De proxy-instellingen voor WinHTTP zijn niet de proxy-instellingen voor Microsoft Internet Explorer. U kunt de proxy-instellingen voor WinHTTP niet configureren in het Configuratiescherm van Microsoft Windows. Als u het hulpprogramma voor winHTTP-proxyconfiguratie gebruikt, worden de instellingen die u voor Internet Explorer gebruikt, niet gewijzigd.
Notitie
Als u probeert een HTTP-aanvraag te openen en te verzenden met WinHTTP en de proxy-instellingen onjuist zijn, treedt er een fout op.
Opdrachtregelparameters
De volgende tabel bevat de opdrachtregelparameters die beschikbaar zijn voor gebruik met het hulpprogramma 'ProxyCfg.exe'.
Parameter | Beschrijving |
---|---|
geen | Wanneer er geen parameters zijn opgegeven, worden de huidige WinHTTP-proxy-instellingen weergegeven. |
? | Help-informatie wordt weergegeven. |
d | Hiermee geeft u op dat WinHTTP-toepassingen rechtstreeks toegang hebben tot het netwerk, zonder een proxy. |
p | Hiermee geeft u de proxyserver. U kunt ook een optionele lijst opgeven met servers die zonder proxy worden geopend. |
u | Hiermee geeft u op dat WinHTTP-toepassingen de proxy-instellingen van de huidige gebruiker voor Internet Explorer gebruiken. Deze parameter werkt niet als Proxy-instellingen automatisch worden gedetecteerd in Internet Explorer of als deze een automatische configuratie-URL gebruikt om de proxygegevens in te stellen. |
Ik | Hiermee geeft u op dat WinHTTP-toepassingen de proxy-instellingen van de huidige gebruiker voor Internet Explorer gebruiken. Dit werkt alleen wanneer ProxyCfg.exe niet eerder is gebruikt. Als ProxyCfg.exe is geïnstalleerd, geeft u op dat de opdrachtregelparameter 'u' de handmatige instellingen gebruikt. Deze parameter werkt niet als Proxy-instellingen automatisch worden gedetecteerd in Internet Explorer of als deze een automatische configuratie-URL gebruikt om de proxygegevens in te stellen. |
U kunt proxy's opgeven in een door spaties gescheiden tekenreeks. De proxyvermeldingen kunnen het poortnummer bevatten dat wordt gebruikt voor toegang tot de proxy. Als u een proxy voor een specifiek protocol wilt weergeven, moet de tekenreeks de notatie volgen, <protocol>=https://<proxy_name>. De geldige protocollen zijn HTTP en HTTPS. Als u bijvoorbeeld een HTTP-proxy wilt weergeven, is een geldige tekenreeks http=https://http_proxy_name:80, waarbij http_proxy_name de naam van de proxyserver is en 80 het poortnummer is dat u moet gebruiken voor toegang tot de proxy. Als de proxy het standaardpoortnummer voor dat protocol gebruikt, kunt u het poortnummer weglaten. Als een proxynaam op zichzelf wordt vermeld, kunt u deze gebruiken als de standaardproxy voor protocollen die geen opgegeven proxy hebben. Http=https://http_proxy other_proxy gebruikt bijvoorbeeld http_proxy voor HTTP-bewerkingen, terwijl het HTTPS-protocol gebruikmaakt van de proxy met de naam other_proxy.
U kunt lokaal bekende hostnamen of IP-adressen vermelden in de lijst met proxy-bypasss. Deze lijst kan jokertekens bevatten, zoals '*', waardoor de toepassing de proxyserver omzeilt voor adressen die voldoen aan het opgegeven patroon, bijvoorbeeld '*.microsoft.com' of '*.org'. Jokertekens moeten de meest linkse tekens in de lijst zijn. 'aaa.*' wordt bijvoorbeeld niet ondersteund. Als u meerdere adressen en hostnamen wilt weergeven, scheidt u deze met lege spaties of puntkomma's in de proxy-bypasstekenreeks. Als u de <lokale> macro opgeeft, wordt met de functie een hostnaam overgeslagen die geen punt bevat.
Waarschuwing
Nadat Proxycfg.exe is uitgevoerd, kunt u de vorige proxy-instellingen niet herstellen. U kunt de proxy-instellingen echter volledig verwijderen.
Gebruik
Als u het hulpprogramma voor proxyconfiguratie wilt gebruiken, opent u een opdrachtpromptvenster en voert u het hulpprogramma voor proxyconfiguratie uit met de juiste opdrachtregelparameters. De volgende sectie bevat syntaxisvoorbeelden.
Voorbeeldsyntaxis
Voorbeeld 1: Alleen een proxy gebruiken voor externe resources
Hieronder vindt u het meest voorkomende gebruik voor Proxycfg.exe. Met deze opdracht geeft u op dat zowel HTTP- als HTTPS-servers worden geopend via de proxyserver met de naam 'proxy_server', met uitzondering van hostnamen die geen punt bevatten.
proxycfg -p proxy_server<lokale>
Voorbeeld 2: Een proxy gebruiken voor alle resources
In het volgende voorbeeld wordt aangegeven dat zowel HTTP- als HTTPS-servers worden geopend via de proxyserver met de naam 'proxy_server'. Er is geen bypass-lijst opgegeven.
proxycfg--p proxy_server
Voorbeeld 3: Een andere proxy gebruiken voor beveiligde resources
In het volgende voorbeeld wordt aangegeven dat HTTP-servers worden geopend via de http_proxy proxy en HTTPS-servers worden geopend via https_proxy. Lokale intranetsites en sites in het domein *.microsoft.com omzeilen de proxy.
proxycfg -p "http=http_proxy https=https_proxy"<lokale>;*.microsoft.com"
ProxyCfg.exe verwijderen
Nadat u het hulpprogramma voor proxyconfiguratie hebt gebruikt, kunt u de oorspronkelijke proxy-instellingen niet herstellen. Indien nodig kunt u echter de registerinstellingen verwijderen die door het hulpprogramma worden gemaakt. Als u de registervermeldingen wilt verwijderen die ProxyCfg.exe maakt, moet u de WinHttpSettings waarde verwijderen uit de volgende registersleutel.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\WinHttpSettings
Als u de WinHttpSettings waarde verwijdert, worden alle proxyconfiguraties verwijderd.
ProxyCfg.exe en verificatie
Het hulpprogramma voor proxyconfiguratie stelt het standaardverificatiebeleid in. Omdat u geen NTLM-verificatie met niet-vertrouwde hosts moet uitvoeren, vindt NTLM-verificatie standaard alleen automatisch plaats bij hosts in de lijst met proxy-bypasss. Als er geen proxy is, kunt u nog steeds ProxyCfg.exe gebruiken om een bypasslijst op te geven van hosts die u vertrouwt om NTLM-verificatie uit te voeren. Een proxynaam is vereist bij het gebruik van ProxyCfg.exe voor dit doel, maar u kunt elke geldige tekenreeks gebruiken in plaats van een echte proxynaam.
Zie Beleid voor automatische aanmeldingvoor meer informatie over het beleid voor automatisch aanmelden.