I cmd.exe skriver du tildelingen uten mellomrom rundt likhetstegnet:

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

Denne tilsynelatende like kommandoen gir et annet resultat:

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

Navnet har nå et mellomrom til slutt, og verdien begynner med ett. Et program som slår opp HTTP_PROXY, spør ikke etter HTTP_PROXY . En vist tildeling kan se nesten riktig ut mens oppslaget du er ute etter blir tomt.

Å sette hele tildelingen i anførselstegn hindrer også at avsluttende mellomrom havner i verdien ved et uhell. Å sette bare verdien i anførselstegn er en annen form og kan etterlate anførselstegn i den lagrede verdien.

Erstatt eksempelets lytter med et HTTP-endepunkt fra tjenesten din eller fra HTTP-proxylisten. Kjør den tiltenkte klienten fra det kommandovinduet slik at den arver variabelen. Et program som allerede kjører et annet sted, får ikke det nye miljøet.

Dette er cmd.exe-syntaks. PowerShell bruker en miljøvariabeltildeling som $env:HTTP_PROXY = 'http://proxy.example:8080'; i PowerShell er mellomrommene i det uttrykket ikke den samme feilen. Programmet må likevel støtte variabelen og proxyprotokollen som gis.

Relaterte artikler