![]() |
Proxyservereinstellungen von Windows auslesen
Hallo,
ich möchte, dass meine Anwendung über idHttp dateien aus dem Internet herunterlädt. Soweit kein problem, es sei denn der Benutzer hat einen Proxyserver eingestellt. Also muss ich die ProxyParams-Eigenschaften setzen. Nur woher bekommen?! In der Registry unter HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\Internet Settings gibts es die Einstellungen zum auslesen, aber wenn der Benutzer ein automatisches Konfiguration-Skript am Proxy nutzt, dann komm ich auch nicht an die Adresse. Also wie kann ich prüfen ob ein Proxyserver genutzt werden soll und wie komm ich zuverlässig an die Proxy-Serveradresse und das Port? Vielen Dank für Vorschläge Grüße |
Re: Proxyservereinstellungen von Windows auslesen
InternetGetProxyInfo()
|
Re: Proxyservereinstellungen von Windows auslesen
Gibts für die Funktion InternetGetProxyInfo() ein Sample, hab im Forum und bei Google nix brauchbars gefunden.
Und diese Funktion liest aus dem Autom. Konfig-Skript (PAC-Datei) den richtigen Proxy aus? |
Re: Proxyservereinstellungen von Windows auslesen
|
Re: Proxyservereinstellungen von Windows auslesen
Hallo,
danke für den Link, aber wie nutze ich den Aufruf in Delphi?? Ich habs nicht so mit den C-Aufrufen. Wär echt dankbar wenn jemand mir sagen könnte wie ich das in Delphi 7 aufrufen kann. |
Re: Proxyservereinstellungen von Windows auslesen
|
Re: Proxyservereinstellungen von Windows auslesen
Hallo,
irgendwie ist unter dem Link nix zu finden. Gibts noch ne andere Quelle für ein Sample? |
Re: Proxyservereinstellungen von Windows auslesen
Moin,
du benötigst zwei Teilfunktionen: Du musst dir zuerst einmal die Proxy-Informationen beschaffen (Proxy aktiviert?, Proxy-Server und Port, Bypass-Liste). Später musst du bei aktiviertem Proxy für jede URL prüfen, ob sie von der Bypass-Liste abgedeckt wird. Die Proxy-Informationen kannst du auf verschiedenen Wegen erhalten: WinInet (ab W95, nicht für services) oder WinHTTP (ab W2K, auch für services). Hier ein wenig Code für WinInet:
Delphi-Quellcode:
Bei direkter Internetverbindung gibt die Funktion False zurück.
function GetProxyInfo(var proxy: string; bypassList: TStrings): Boolean;
var pi: PInternetProxyInfo; dwSize: DWORD; i: Integer; begin InternetQueryOption(nil, INTERNET_OPTION_PROXY, nil, dwSize); GetMem(pi, dwSize); InternetQueryOption(nil, INTERNET_OPTION_PROXY, pi, dwSize); Result := pi.dwAccessType = INTERNET_OPEN_TYPE_PROXY; try proxy := pi.lpszProxy; i := Pos(' ', proxy); // proxy chaining? if i > 0 then // grab first only SetLength(proxy, Pred(i)); bypassList.CommaText := pi.lpszProxyBypass; finally FreeMem(pi); end; end; Freundliche Grüße |
Re: Proxyservereinstellungen von Windows auslesen
Danke für den Quellcode, er funzt einwandfrei wenn die Proxyadresse direkt in den Einstellungen hinterlegt wurde, aber ich hab mit automatischem Konfigskript (PAC-File) ausprobiert, und da kommt keine Adresse und auf das Result der Function ist False.
Wie krieg ich die Adresse bei einen Konfigskript ausgelesen?! |
Re: Proxyservereinstellungen von Windows auslesen
Code-Library:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz