W cmd.exe zapisz przypisanie bez spacji wokół znaku równości:

set "HTTP_PROXY=http://proxy.example:8080"

To pozornie podobne polecenie daje inny wynik:

set HTTP_PROXY = http://proxy.example:8080

Nazwa ma teraz spację na końcu, a wartość zaczyna się od spacji. Aplikacja, która szuka HTTP_PROXY, nie pyta o HTTP_PROXY . Wyświetlone przypisanie może wyglądać prawie poprawnie, a zamierzone wyszukiwanie pozostaje puste.

Objęcie całego przypisania cudzysłowami zapobiega też przypadkowemu dodaniu końcowych spacji do wartości. Objęcie cudzysłowami samej wartości to inna forma i może pozostawić znaki cudzysłowu w zapisanej wartości.

Zastąp przykładowy nasłuch punktem końcowym HTTP z Twojej usługi lub z listy proxy HTTP. Uruchom docelowego klienta z tego okna poleceń, aby odziedziczył zmienną. Aplikacja działająca już gdzie indziej nie przejmuje nowego środowiska.

To składnia cmd.exe. PowerShell używa przypisania zmiennej środowiskowej, np. $env:HTTP_PROXY = 'http://proxy.example:8080'; w PowerShellu spacje w tym wyrażeniu nie są tym samym błędem. Program nadal musi obsługiwać podaną zmienną i protokół proxy.

Powiązane artykuły