Autor Beitrag
adeptus
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Do 13.10.05 11:16 
Hallo,

ich hatte bereits hier ein Posting zu diesem Thema gemacht, es aber wohl falsch formuliert.

Nun mein zweiter Versuch (nur eine Frage formulierend :wink: ):

Weiss jemand wie ich mit Delphi eine ähnliche Funktionalität implementieren kann wie sie der IE unter "Extras/InternetoptionenVerbindungen/Einstellungen/Automatische Suche der Einstellungen" bzw. "Automatisches Konfigurationsskript verwenden" anbietet?

Danke!

Gruß,
Pascal
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Do 13.10.05 11:20 
Mhhh also mir fällt dazu erstmal ein Pingscan auf Port 8080 ein aber das ist wirklich Quick&Dirty.

Die Scripte werden über die Richtlinien des ADS verteilt, k.A. ob man da per WinAPI an das ADS muss oder ob es da eine Funktion für gibt.

Wieso ließt du das nicht einfach aus der Registry des IE?
adeptus Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Do 13.10.05 18:18 
user profile icondigi_c hat folgendes geschrieben:
Mhhh also mir fällt dazu erstmal ein Pingscan auf Port 8080 ein aber das ist wirklich Quick&Dirty.

Die Scripte werden über die Richtlinien des ADS verteilt, k.A. ob man da per WinAPI an das ADS muss oder ob es da eine Funktion für gibt.

Wieso ließt du das nicht einfach aus der Registry des IE?


Das habe ich auch schon gemacht. Nur reicht mir das nicht, weil

a) Der User vielleicht den IE gar nicht verwendet und deswegen dort den Proxy nicht eingerichtet hat
und
b) es ja vielleicht verschiedene Proxys gibt (zb Je nach gesuchter URL)
und
c) ich es einfach "richtig" machen wollte und nicht ausgerechnet vom IE abhängig sein wollte... :wink:
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Do 13.10.05 21:57 
Wie gesagt das ADS schiebt das IMHO in die Internetoptionen somit indirekt auch in den IE. Normalerweise benutzen andere Programme ja dieselbe Konfig.
Pepe
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 107

Win 98, Win 2000 Prof., Win XP Prof.
Delphi 2005 Prof.
BeitragVerfasst: Fr 14.10.05 19:40 
die automatische proxy suche funktioniert allerdings komplett anders.


der ie (oder ein anderer browser, mozilla, firefox, etc.) findet auch nicht jeden proxy, sondern nur die, die gefunden werden sollen!

der browser bekommt entweder vom dns server oder üblicherweise vom dhcp server (hier allgemeine Option 252) eine url, welche auf einem http-server irgendwo im netz liegt, dieser muss allerdings überall zugänglich sein.

die datei ist dann entweder im wdat format (windows) oder im .pac Format. In dieser Datei befinden sich dann verschieden javascript funktionen, die die proxy einstellungen setzen.


gebt einfach mal bei google proxy.pac oder "Dhcp, option 252" ein.

so long

Pepe


/E: das Automatische Konfigurationsscript ist die .pac oder .wdat Datei.
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Sa 15.10.05 14:59 
Aha, wieder was gelernt ^^ wollte nicht extra unseren Firmenadmin fragen ;)
Pepe
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 107

Win 98, Win 2000 Prof., Win XP Prof.
Delphi 2005 Prof.
BeitragVerfasst: Sa 15.10.05 15:53 
*gg*

inner active directory domäne würd ich allerdings auch den schöneren weg über die policys gehen, kann man noch mehr mit machen und hat bessere kontrollen :D
MSCH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1448
Erhaltene Danke: 3

W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
BeitragVerfasst: Sa 15.10.05 16:51 
user profile iconPepe hat folgendes geschrieben:
*gg*

inner active directory domäne würd ich allerdings auch den schöneren weg über die policys gehen, kann man noch mehr mit machen und hat bessere kontrollen :D


genau, und der User schaut in die Röhre, weil er die Policies nicht ändern darf.
Und dann würd ich das Register des IE auch via GP ausblenden. Am besten die gesamte Systemsteuerung.
Grez
MSch

_________________
ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
adeptus Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Di 18.10.05 11:49 
user profile iconPepe hat folgendes geschrieben:
die automatische proxy suche funktioniert allerdings komplett anders.


der ie (oder ein anderer browser, mozilla, firefox, etc.) findet auch nicht jeden proxy, sondern nur die, die gefunden werden sollen!

der browser bekommt entweder vom dns server oder üblicherweise vom dhcp server (hier allgemeine Option 252) eine url, welche auf einem http-server irgendwo im netz liegt, dieser muss allerdings überall zugänglich sein.

die datei ist dann entweder im wdat format (windows) oder im .pac Format. In dieser Datei befinden sich dann verschieden javascript funktionen, die die proxy einstellungen setzen.


gebt einfach mal bei google proxy.pac oder "Dhcp, option 252" ein.

so long

Pepe


/E: das Automatische Konfigurationsscript ist die .pac oder .wdat Datei.


So und genau das ist die Frage: Wie mache ich das? Die WPAD.DAT Datei habe ich ja schon heruntergeladen. Nur ist sie halt ein JavaScript. Wie kann ich den am besten ausführen ohne gleich einen JavaScript-Parser zu schreiben? Die gleiche Frage hatte ich bereits hier angesprochen, leider ohne Antwort!
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Di 18.10.05 13:43 
Parser wäre da sicherlich etwas überdimensioniert, da du dich ja nur auf das RETURN "PROXY konzentrieren musst(falls alle WPADs meiner hier ähneln);)
adeptus Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Mi 19.10.05 11:39 
user profile icondigi_c hat folgendes geschrieben:
Parser wäre da sicherlich etwas überdimensioniert, da du dich ja nur auf das RETURN "PROXY konzentrieren musst(falls alle WPADs meiner hier ähneln);)


"Meine" WPAD.DAT sieht leider so aus:

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
function FindProxyForURL(url, host)
{
if (isInNet(host,      "10.0.0.0",     "255.0.0.0") ||
    isInNet(host,     "127.0.0.0", "255.255.255.0") ||
    isInNet(host, "128.200.150.0", "255.255.255.0") ||
    isInNet(host,    "134.38.0.0",   "255.255.0.0") ||
    isInNet(host,  "140.13.153.0", "255.255.255.0") ||
    ...    
    isInNet(host,  "194.11.126.0", "255.255.255.0"))
    return "DIRECT";
else
    return "PROXY proxy:8080; PROXY 10.110.9.60:8080; PROXY 10.110.9.61:8080; DIRECT";
}


Auf was kann ich mich da konzentrieren ohne zu parsen? Die Datei könnte ja noch komplexer sein. Wenn ich nicht wirklich "verstehe" was in der Datei steht, müsste ich ja alle "return" bearbeiten und Stück für Stück die Proxy-IPs herausfummeln und versuchen ob´s klappt. Wenn nicht dann den nächsten herauspulen und so weiter... Deswegen dachte ich halt an einen Parser oder Interpereter...
Pepe
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 107

Win 98, Win 2000 Prof., Win XP Prof.
Delphi 2005 Prof.
BeitragVerfasst: Do 20.10.05 17:19 
such doch einfach nach FindProxyForURL(url, host) und schnapp dir alle returns bis zum nächsten function und probier sie durch, wenn du einen gefunden hast, speicherst du ihn als funktionierenden und wenn er's nicht mehr tut, wiederholst du das spielchen.
adeptus Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Fr 21.10.05 15:38 
user profile iconPepe hat folgendes geschrieben:
such doch einfach nach FindProxyForURL(url, host) und schnapp dir alle returns bis zum nächsten function und probier sie durch, wenn du einen gefunden hast, speicherst du ihn als funktionierenden und wenn er's nicht mehr tut, wiederholst du das spielchen.


Naja, genau das habe ich ja im zwei Postings früher ja erwähnt... Genau DAS wollte ich ja verhindern, weil ich ja nicht weiss wie komplex so´ne Datei noch werden kann. Wenn ich jeden Proxy über den ich der Datei stopelere ausprobiere, muß der User doch zum Teil recht lange warten...

Deswegen sollte der Kode schnell von einem Script-Control interpretiert/ausgeführt werden sollen und mir die Daten eines gültigen Proxys zurückliefern.
Pepe
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 107

Win 98, Win 2000 Prof., Win XP Prof.
Delphi 2005 Prof.
BeitragVerfasst: Fr 21.10.05 17:46 
der ie macht ja auch nichts anderes, parst die function und probiert dann alle proxy aus, angefangen beim ersten, also das dürfte doch recht fix gehen...
adeptus Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Di 25.10.05 12:07 
Na das glaube ich nicht... Ich meine schon, dass der IE seinen JavaScript-Interpreter darauf loslässt... Sonst würde die DAT-Datei doch überhaupt erst gar nicht mit "ifs" und "elses" durchsetzt werden, sondern nur aus einer Liste von IPs und Ports bestehen...
Pepe
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 107

Win 98, Win 2000 Prof., Win XP Prof.
Delphi 2005 Prof.
BeitragVerfasst: Di 25.10.05 20:35 
joa, dann müsstest du aber herausfinden, was mit in host url übergeben wird und z.b. die funktion isInNet bewirkt... meines erachtens nach mach die nichts anderes als die connectivität zu überprüfen...
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Mi 26.10.05 08:05 
Die Datei wird doch eh vom ADS zusammengeschnippelt, ich glaube nicht das es da noch soooo wahnsinnig viele Abweichungen geben kann ;)
adeptus Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Fr 28.10.05 10:46 
user profile icondigi_c hat folgendes geschrieben:
Die Datei wird doch eh vom ADS zusammengeschnippelt, ich glaube nicht das es da noch soooo wahnsinnig viele Abweichungen geben kann ;)


ADS???
digi_c
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1905

W98, XP
D7 PE, Lazarus, WinAVR
BeitragVerfasst: Fr 28.10.05 14:56 
Active Directory Service, der Dienst der die Domänestruktur eines Windowsnetzwerkes per Server steuert (wenn ich mich da richtig ausdrücke)