Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Besteht eine Internetverbindung? (https://www.delphipraxis.net/46-besteht-eine-internetverbindung.html)

DeCodeGuru 8. Jun 2002 10:49


Besteht eine Internetverbindung?
 
Hi Leute,

mir fiel letztens auf (als ich vor einem Rechner, der über nen Router ins iNet geht, saß), dass ich nicht richtig überprüfen konnte, ich ich jetzt eingewählt bin oder nicht.

Normalerweise macht man das ja mit InternetGetConnectedState, aber das hat da nicht funktioniert. Das Ergebnis war immer, dass eine Verbindung hergestellt war, was aber nicht stimmte.

Hat da jemand ne Frage??

MfG DeCodeGuru

Christian Seehase 8. Jun 2002 13:21

Moin DeCodeGuru,

probier's mal so
Code:
const
  _asConnectionState : array [Boolean] of string = ('OFFLINE','ONLINE');
  INTERNET_CONNECTION_OFFLINE = $20;

var
  dwResult : DWord;

begin
  InternetGetConnectedState(@dwResult,0);
  ShowMessage(_asConnectionState[(dwResult and INTERNET_CONNECTION_OFFLINE) = 0]);
end;
[/code]

Yheeky 8. Jun 2002 13:23

Hi!

Mein erstes Posting :lol:
Also schau mal, vielleicht hilft dir folgendes.

http://www.swissdelphicenter.ch/de/showcode.php?id=70

Gruß Yheeky

DeCodeGuru 8. Jun 2002 14:17

Hi!

@Christian: Ich habe das jetzt mal ausprobiert und es funktioniert ohne Router einwandfrei. Mit Router konnte ich noch nicht testen, habe das Prog meinem Freund aber schon mal per Mail geschickt.

@Yheeky: Ich werde das gleich auch nochmal ausprobieren (kann ja nicht schaden :o )

MfG DeCodeGuru

DeCodeGuru 9. Jun 2002 10:31

Moin Leute,

also ich habe das ausprobieren lassen und es hat nicht funktioniert. Leider!! :cry:

Hat nochjemand eine Idee?

MfG DeCodeGuru

thomasdrewermann 9. Jun 2002 11:02

Vielleicht kannst du es mit einer NMHTTP Komponente probieren. Kannst ja einfach ne Seite Aufrufen lassen und wenn der aufruf scheitert den Fehlercode auswerten. Wenn der Fehlercode besagt, dass der Name nicht aufgelöst werden kann, dann bist du offline. Andernfalls bist du online. Zur Verwendung der NMHTTP Kompo gibts bei den Demo's unter Fastnet ein Beispiel.

DeCodeGuru 9. Jun 2002 11:05

Hi Thomas,

ich werde es probieren.

Zitat:

Ich hoffe ich habe dir damit weitergeholfen
Ja, hast du :D

Zitat:

Ich versuch das ganze mal in Code zu verfassen
Das wäre echt super.

MfG DeCodeGuru

Darty 9. Jun 2002 13:52

Hi,

hier mein Code, auch wenn der ähnlich wie die von Christian Seehase ist. Ich konnte mein Freund nicht erreichen, aber er hat auch einen Router und ich vermute bei ihm hatte es geklappt ..

Code:
procedure TForm1.Button1Click(Sender: TObject);
var
  dwResult : cardinal;
begin
  dwResult := 0;
  if internetgetconnectedstate(@dwResult,0) = FALSE then
    begin
      ShowMessage('Keine Verbindung');
    end
  else
    begin
      ShowMessage('Verbindung vorhanden');
    end
end;
Und in Uses muss noch WININET eingefügt werden.

Luckie 9. Jun 2002 14:12

@Darty: Hat das nichts schon Christian gepostet? das hat doch nicht funktioniert..

Wenn du das mit dem HTTP-Download machst, dann nimm aber eine Seite, die auch relativ stabil, Google oder so.

Darty 9. Jun 2002 14:24

@Luckie: Du redest mich mit meinen Nick an :), für alle unwissende .. Man nennt mich auch Darty ;) Ja Luckie, ich sagte es doch, dass Christian es schon ähnlich postete, aber ich meine das geht mit dem Router auch ...

Aber die Idee eine Seite aufzurufen und bei nicht erreichen dann davon ausgehen dass die Verbindung nicht besteht ist gut. Aber auch nicht 100%, den eine Seite ist nie 100% erreichbar !!! Also würde diese "Not-Lösung" in den meisten Fällen bei einer immer gut erreichbare Seite funktionieren, aber in Einzelfällen wenn diese Seite off ist oder was auch immer würde dann der Schuss nach hinten losgehen ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:48 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz