Fyri eina niðurhaling, sum verður sett í gongd við QProcess, bygg barnsins umhvørvi áðrenn tú setur tað í gongd:

auto* download = new QProcess(parent);
QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
env.insert("https_proxy", "http://proxy.example:8080");
download->setProcessEnvironment(env);
download->start("curl", {"--head", "https://www.example.com/"});

Hesin Qt-brotið væntar, at ein foreldra-objektur er til, at ein hendingarlúka er til, og at curl er tøkt fyri barnið. Halt QProcess livandi, meðan tað koyrir, og viðger liðugleika- og villusignølini í applikatiónini. Fyri hesa kanning av einum almennum heimasíðu uttan proxy-samskifti, bjóðar listin við HTTP-proxyum hóskandi HTTP-endpoint fyri proxy-virðið hjá barninum.

At byrja við systemEnvironment varðveitir arvað virði sum PATH. At byggja eitt annars tómt umhvørvi og leggja eina proxy-variable afturat fór at sleppa teimum øðrum postunum.

Navnið á variablinum er lykilin. export er ein shell-kommando, er ikki partur av tí lyklinum og er ikki eitt køyrandi skjal, sum QProcess skal seta í gongd fyrst. At lata umhvørvið beint fram kemur eisini í vegin fyri at byggja eina shell-kommando rundan um URL-ina.

setProcessEnvironment eigur við prosessin, sum verður settur í gongd eftir tað. Tað broytir ikki umhvørvið hjá einum barni, sum longu koyrir, ella hjá tí shell, sum setti Qt-applikatónina í gongd.

Hin valdi niðurhalingin má skilja variablin. Hetta dømið brúkar lítil bókstavir í https_proxy fyri HTTPS-fyrispurningin hjá curl og varðveitir arvaðar umfarings-innløgur. Eitt annað barnaprogram kann hava eitt annað proxy-interface.

Skyldar greinar