2009-05-31 3 views
2

Ich habe den folgenden Code, ich versuche, von den Systemen Proxy-Einstellungen zu extrahieren:Wie bekomme ich den System-Proxy mit Qt?

QList<QNetworkProxy> listOfProxies = QNetworkProxyFactory::systemProxyForQuery(); 
foreach (QNetworkProxy loopItem, listOfProxies) { 
    qDebug() << "proxyUsed:" << loopItem.hostName(); 
} 

ich nur einen Punkt zurück und mit einem leeren Host-Namen. Irgendwelche Ideen was ich vermisse?

+0

Was zeigt loopItem.type()? Riecht wie "kein Proxy" (Typ 2), der auftritt, wenn Qt den Proxy nicht finden kann (die Beschränkungen für die Proxy-Factory finden Sie in deren Dokumentation). –

+0

Es zeigt Typ 2 wie du sagst. –

Antwort

5

Indem:

QNetworkProxyQuery npq(QUrl("http://www.google.com")); 
QList<QNetworkProxy> listOfProxies = QNetworkProxyFactory::systemProxyForQuery(npq); 

ich erscheinen aus der Proxy bekommen.

1

QNetworkProxyQuery npq (QUrl (QLatin1String ("http://www.google.com")));

Vergessen Sie nicht, QLatin1String zu verwenden :)

+1

warum QLatin1String? –

+1

Keine Antwort. Keine Erklärung, warum QLatin1String verwendet wird. Warum nicht QStringLiteral? etc.. –

Verwandte Themen