| Autor |
Beitrag |
Wolle92
      
Beiträge: 1296
Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
|
Verfasst: Mi 10.10.07 20:22
Hallo, wollte fragen, ob es eine Möglichkeit gibt, zu kontrollieren, ob eine Internetverbindung besteht...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 10.10.07 20:28
|
|
Wolle92 
      
Beiträge: 1296
Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
|
Verfasst: Mi 10.10.07 20:40
Aber wie macht denn Windows das?
Bei Windows Vista hat man doch zum Beispiel unten bei der Uhr ein Symbol, wenn man nicht mit Internet oder LAN verbunden ist, dann sind es zwei Monitore mit einem roten kreuz, wenn man mit dem LAN verbunden ist, dann sind es nur zwei Monitore und wenn man mit dem Internet verbunden ist, dann sind es zwei Monitore mit einer Erdkugel...
Wie machen die das? Und wenn es jetzt doch keine Lösung gibt, die man als Nicht-Microsoft-Mitarbeiter versteht, wie kann ich dann mein Programm davor schützen, dass es bei einer IdHTTP-Get-Anfrage abstürzt, wenn kein Internet da ist?
|
|
Dunkel
      
Beiträge: 682
Mac OS X Snow Leopard
Xcode 3.1
|
Verfasst: Mi 10.10.07 20:46
Wolle92 hat folgendes geschrieben: | | { ... } wenn man mit dem Internet verbunden ist, dann sind es zwei Monitore mit einer Erdkugel... |
Ja?  Ist mir noch nie (bewusst) aufgefallen. Welches Windows benutzt Du? Wie gehst Du ins Internet? DialUp? DSL & Modem direkt an der Netzwerkschnittstelle? DSL & Modem mit Router?
_________________ Ich streite einsam mich mit dieser Oberflächenwelt
Gutes sei ein löblich Brot von dem ich zehre - bis zum Tod [Das Ich - Im Ich]
|
|
Wolle92 
      
Beiträge: 1296
Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
|
Verfasst: Mi 10.10.07 20:48
Ich benutze Windows Vista... steht auch in meinem Beitrag, und habe eine DSL-6000-Verbindung über einen Router der insgesamt drei PCs verwaltet...
|
|
JayEff
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Mi 10.10.07 20:50
Yup, Vista unterscheidet zwischen LAN oder I-Net im Tray Symbol. Das kann ich bestätigen. Ich hab auch keine ahnung wie das funktioniert.
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 10.10.07 23:20
Moin!
Wolle92 hat folgendes geschrieben: | | Hallo, wollte fragen, ob es eine Möglichkeit gibt, zu kontrollieren, ob eine Internetverbindung besteht... |
Nein, dieses Problem ist grundsätzlich nicht lösbar!
www.delphi-forum.de/viewtopic.php?t=65051
Die Standard-"Lösung" in diesem Fall lautet: Frag den Benutzer! Nur er kann das zweifelsfrei beantworten.
Abgesehen davon halte ich Programme, die ungefragt Internetverbindungen nutzen, für mindestens zweifelhaft.  Warum fragst du den Benutzer nicht, ob er nach Updates suchen möchte? Da ist dann auch der Hinweis gut aufgehoben, dass dann natürlich eine Internetverbindung notwendig ist. Was ist denn, wenn ich das Programm gar nicht aktualisieren möchte, weil die neue Version z.B. fehlerhaft ist und unklar, wann das "repariert" wird?
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
JayEff
      
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Mi 10.10.07 23:27
Narses hat folgendes geschrieben: | | Frag den Benutzer! Nur er kann das zweifelsfrei beantworten. |
Naaa, benutz das Wort "Zweifelsfrei" in dem Zusammenhang nicht so leichtfertig
Nun, die Frage, die noch übrig bleibt, ist doch, wie macht das Vista?
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 10.10.07 23:30
Moin!
JayEff hat folgendes geschrieben: | Narses hat folgendes geschrieben: | | Frag den Benutzer! Nur er kann das zweifelsfrei beantworten. | Naaa, benutz das Wort "Zweifelsfrei" in dem Zusammenhang nicht so leichtfertig  |
OK, er sollte es zweifelsfrei beantworten können.
JayEff hat folgendes geschrieben: | | Nun, die Frage, die noch übrig bleibt, ist doch, wie macht das Vista? |
Vorweg: ich habe keine Ahnung, wie Vista das macht.
Aber ich schätze, das wird mal wieder einer der M$-typischen "Tricks" sein: z.B. sagst du doch beim Einrichten, was für eine Verbindung du da aufbauen willst (Internet, priv. LAN, etc.pp.). Wenn du (als Betriebssystem) also in der Verbindung den Typ vom Benutzer vorgegeben bekommen hast, dann sollte das keine soo große Kunst mehr sein...
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Agawain
      
Beiträge: 460
win xp
D5, MySQL, devxpress
|
Verfasst: Mi 10.10.07 23:48
Hi
also ich denk mal, daß das auch mit einem API-Call gehen müßte, gibt doch soviel Programme, die einen beim Start aufeinmal auf ne Web-site bringen.
Man könnt ja auch mal nen server try except pingen, der an und für sich eigentlich immer da ist.
und das mit dem zweifelsfrei, na ja...manchmal klappt das bei uns mit dem DNS nicht nach draußen...dann funktioniert für die User i-net nicht...aber die internet-verbindung ist doch da...also mit dem !sollte! muß man schon sehr auf die Benutzer von Seiten wie dieser einschränken und das sind sicherlich auch keine 100 %
Gruß
Aga
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 10.10.07 23:56
Moin!
Agawain hat folgendes geschrieben: | | also ich denk mal, daß das auch mit einem API-Call gehen müßte, |
Nochmal: zweifelsfrei kann man eine Internetverbindung nicht automatisiert feststellen.  Echt jetzt...
Wenn du das Gegenteil behauptest, dann bleibst du mir den Beweis schuldig, so ein Programm zu liefern.  (ganz sicher...  )
Agawain hat folgendes geschrieben: | | gibt doch soviel Programme, die einen beim Start aufeinmal auf ne Web-site bringen. |
Was eben nur klappt, wenn eine Internetverbindung da ist.
Agawain hat folgendes geschrieben: | | Man könnt ja auch mal nen server try except pingen, der an und für sich eigentlich immer da ist. |
Das ist kein Test, sondern ändert z.B. bei Dial-up-Routern den tatsächlichen Zustand. Bitte nochmal aufmerksam den Link oben lesen!
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Agawain
      
Beiträge: 460
win xp
D5, MySQL, devxpress
|
Verfasst: Do 11.10.07 00:31
aha
den link www.marian-aldenhoev...e/dojo/internet.html find ich ja süß.
Aber da ist von ie4 die Rede, das ist ja nun schon was länger her....also Meister, ich fühle mich ermutigt mal auf die Suche zu gehen.
Eingebettete Konsolenanwendung? aber ok, da haste recht, wenn der router so konfiguriert ist, dass er bei Bedarf eine i-net-Verbindung aufbaut, dann haste keine Chance.
Aber bei der Firma, bei der ich vorher gearbeitet habe hatten wir z.B. damals MDAEMON-Server und Gateway-Server, die nach Bedarf eine Verbindung aufgebaut über ne ISDN-Karte aufgebaut haben. Genauer gesagt..obwohl die beiden Sachen stammten aus einer Softwareschiede, oder einer die ziemlich eng zusammen gearbeitet hat, also da war das so, daß der gateway bei Bedarf die Internet-Verbindung aufgebaut hat, das hat auch der MDAEMON, übrigens ein Mailserver ebenfalls gemacht, nach seinem scheduling-Plan...aber er war auch so konfiguriert, dass er die mails auch bei bestehender i-netVerbindung abholte. Also entweder hat der selber mit einem timer gepingt, oder wurde vom gateway informiert, dass eine besteht...anyway, war zwar es ein geiles Programm, aber das waren auch noch Zeiten, wo compuserve 5 Mark die Stunde kostete und Websiten nach Designregeln maximal 50 kb mit Bildern sein sollten  kaum noch vorstellbar heute.
Back to Topic bevor ich ganz abschwife
Aber darum gings doch Wolle92 glaub ich eigentlich nicht, es ging zwar um zweifelsfrei, aber wohl vor allem darum, dass sein proggi nicht abstürzt.
*auf Suche begeb, Meister  ....
Gruß
Aga
|
|
Wolle92 
      
Beiträge: 1296
Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
|
Verfasst: Do 11.10.07 16:19
genau das ist es... wenn ein Router so konfiguriert ist, dass er bei Bedarf eien Internetverbindung aufbaut, dann reicht mir das doch auch...
Außerdem: Der Benutzer wird gefragt, ob er das Update installieren will, aber um zu kontrollieren, ob es einen neue Version gibt brauch ich ja eine Internetverbindung... die aktuell im Internet verfügbare Version steht in einem Textdokument auf einem Webserver... Und wenn keine Verbindung da ist bzw. nicht aufgebaut werden kann dann stürzt mein Programm immer ab... Also will ich das checken und falls nötig überspringen
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 11.10.07 16:31
Moin!
Wolle92 hat folgendes geschrieben: | | genau das ist es... wenn ein Router so konfiguriert ist, dass er bei Bedarf eien Internetverbindung aufbaut, dann reicht mir das doch auch... |
Das mag dir reichen - aber warum richtet jemand einen Router so ein?  Weil es vermutlich ein Zeittarif ist?  Und dann kostet dein "Test" Geld!  Das würde ich jedenfalls nicht besonders witzig finden... und damit ist dein Programm schnell im "Abseits"...
Wolle92 hat folgendes geschrieben: | | Außerdem: Der Benutzer wird gefragt, ob er das Update installieren will, |
Der Benutzer sollte schon gefragt werden, ob er überhaupt nach einer neuen Version suchen will.
Wolle92 hat folgendes geschrieben: | | aber um zu kontrollieren, ob es einen neue Version gibt brauch ich ja eine Internetverbindung... die aktuell im Internet verfügbare Version steht in einem Textdokument auf einem Webserver... Und wenn keine Verbindung da ist bzw. nicht aufgebaut werden kann dann stürzt mein Programm immer ab... Also will ich das checken und falls nötig überspringen |
Ansatz: Ping den Server an, wenn das klappt, hast du eine "Internetverbindung".
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
Zuletzt bearbeitet von Narses am Do 18.10.07 22:42, insgesamt 1-mal bearbeitet
|
|
Wolle92 
      
Beiträge: 1296
Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
|
Verfasst: Do 11.10.07 16:42
ist es denn so teuer, wenn man 3 (in Worten: drei) Byte von einem Server runterlädt?
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 11.10.07 16:47
Wolle92 hat folgendes geschrieben: | | ist es denn so teuer, wenn man 3 (in Worten: drei) Byte von einem Server runterlädt? |
Ja, wenn man einen Zeittarif hat und das Programm jedes mal ins Internet geht, wenn man es startet.
|
|
Wolle92 
      
Beiträge: 1296
Windows Vista Home Premium
Delphi 7 PE, Delphi 7 Portable, bald C++ & DirectX
|
Verfasst: Do 11.10.07 17:39
dann mach ich nen Einstellungen-Menü, wo man das an- und abschalten kann und noch andere einstellugen
|
|
Saarpoint
      
Beiträge: 199
Win XP Home, Vista Home Premium
D5 Std, D7 pers., D2005 Pro. SP3, TurboDelphi
|
Verfasst: Do 31.01.08 00:55
Öhm...
Da Windows doch keine Probleme damit hat festzustellen, ob es nun online ist oder nicht,
warum fragt man dann anstatt nach dem Zustand der Verbindung, nicht nach dem Zustand des Icons, welches Windows im Tray gerade anzeigt (Icon-Index/Name, etc.)???
Ob und wie das funktioniert, da hab ich leider keine Ahnung.
Wäre aber eine Idee für einen neuen Lösungsansatz, oder?
Andreas
_________________ Standart := false; Standard := true;
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 31.01.08 01:22
Moin!
Saarpoint hat folgendes geschrieben: | | Da Windows doch keine Probleme damit hat festzustellen, ob es nun online ist oder nicht, |
Windows hat auch keine anderen Probleme als wir und kann nicht 100%ig feststellen, ob es "mit dem Internet verbunden ist" oder nicht. Vielleicht schaffen es die Redmonder ein paar Prozentpunkte näher dran, als ein Delphi-Programm, aber es wird sicher immer eine Konstellation geben, in der das nicht automatisiert erkennbar ist (für das Vorstellungsvermögen ist der Einwahlrouter-bei-Bedarf immer ein guter Ansatzpunkt).
Einziges, sinnvolles Fazit aus diesen Diskussionen bleibt: Man frage den Benutzer, ob der Rechner online sein sollte oder nicht!
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
alzaimar
      
Beiträge: 2889
Erhaltene Danke: 13
W2000, XP
D6E, BDS2006A, DevExpress
|
Verfasst: Do 31.01.08 08:29
Ich glaube nicht, das Vista mit irgendwelchen obskuren Tricks arbeitet, die man mit einem Delphi-Programm nicht hinbekommt. Die kochten, kochen und werden immer mit Wasser kochen. Genauso wie Du und ich. Das sieht man schon an der Qualität der MS-Produkte: Durchwachsen.
Ich habe zwar kein Vista, aber ich würde mal probieren, wie sich das Icon verhält, wenn man den Router manuell offline stellt. Welche Pakete verschickt Vista? Ich hab vor vielen Jahren mal soetwas implementiert und da hat ein Ping nich keine Verbindung aufgebaut. Wie das jetzt ist, weiss ich nicht.
_________________ Na denn, dann. Bis dann, denn.
|
|
|