[C/C++] Überprüfen ob Internetverbindung besteht

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von CS-Luck0r, 26. März 2009 .

Schlagworte:
  1. 26. März 2009
    Überprüfen ob Internetverbindung besteht

    Hallo Leute,

    ich will mir ein Programm programmieren, Objektorientiert, Einfacher Dialog.
    Darin soll er in einem Textfeld ausgeben "Internetverbindung: OK" oder halt wenn nicht OK, Fehler oder sonst was...

    Programmieren tu ich es mit MS Visual Studio 6, und der MFC (Jaja, ich weiß. Total veraltet, müll usw(hasst es ruhig) aber mein Lehrer will das wir damit proggen)

    Nunja, und nach ein paar malen googlen, hab ich dennoch nichts weiteres gefunden. Hatte erst überlegt ob man nicht einfach einen Riesen wie z.B.: Google oder Microsoft anpingt, und dadurch dann rauskriegen kann, ob man Online ist oder nicht.

    Mich würde mal interessieren, wie man das am besten machen kann.
     
  2. 26. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Ping google an & fertig Du kannst zumindest damit rechnen, dass sie nicht in naher Zukunft down gehen.

    Der Prefix im Threadtitel ist übringens falsch gewählt, sollte es wirklich um VB gehen
     
  3. 26. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Ach Mist, ich hab mich nur vertippt!

    MS Visual Studio 6, meint ich.

    Da isses nich so einfach mit ping und fertig
     
  4. 26. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Winsock einbinden.

    Winsock1.Close
    Winsock1.RemoteHost = "www.google.de"
    Winsock1.RemotePort = "80"
    Winsock1.Connect

    Private Sub Winsock1_Error
    msgbox "kein inet"
    End Sub

    Private Sub Winsock1_Connect
    msgbox "inet"
    End Sub

    MfG, Chrisomator
     
  5. 26. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Wir sind immernoch bei C/C++.

    Danke trotzdem
     
  6. 26. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Auch unter C++ kann die Winsock Bibliothek genutzt werden. Alternativ könntest du auch ein "ping google.com" an die Kommandozeile schicken & anschließend den Standart-Output auswerten.

    Viel Erfolg!
     
  7. 26. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Das mit dem Winsock schnall ich nich ganz.. oO. Codebeispiel?

    Wie meinste das mit dem "ping google.com".. Mit system("ping google.com");?
    Wäre ja ansich möglich, nur das ich den Ergebnissen nichts anfangen kann.

    Grüßé
     
  8. 26. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Such im Std-Output nach "ttl". Wenns vorkommt, dann war der Ping erfolgreich.

    Zu deinem Winsock Problem
     
  9. 26. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Das mit dem ttl interessiert mich. Wie macht man sowas?
     
  10. 27. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Socketprogrammierung
    • Windows:
      Winsock intialisieren ([G]WSAStartup()[/G])​
    • Socket estellen ([G]socket()[/G])
    • Verbinden ([G]connect()[/G])
    • Verbindung schließen ([G]close()[/G] o. [G]closesocket()[/G])
    • Windows:
      Winsock deinitialisieren ([G]WSACleanup()[/G])​

    Wenn du alles schön in eine Klasse zusammenbastelst könnte es am Ende
    eventuell so aussehen:

    Code:
    sock.SetHost( "www.google.de" );
    sock.SetPort( 80 );
    
    if( sock.Connect() )
    {
     cout << "Verbindung hergestellt." << endl;
    }
    else
     cout << "Es konnte keine Verbindung zu " << sock.Host()
     << " hergestellt werden." << endl;
    Falls du dabei noch Hilfe brauchst, schau dich entweder per Google um. Gibt zig Tutorials zu diesem Thema .
     
  11. 27. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Sorry, wie es mit dem Output auslesen genau klappt, weiß ich nicht. Ich bin nämlich noch recht unerfahren in C++.

    Das sieht interessant aus
    Ansonten ist Google dein Freund.
     
  12. 27. März 2009
    AW: Überprüfen ob Internetverbindung besteht

    Hier ein code beispiel:

    Code:
    #include <windows.h>
    #include <ras.h>
    #include <iostream.h>
    
    bool CheckForConnection()
    {
     
     RASCONN RasCon;
     LPRASCONN pRasCon = &RasCon;
    
     RASCONNSTATUS RasConStatus;
    
     DWORD lpcb;
     DWORD lpcConnections;
     bool ReturnValue;
    
     
     pRasCon->dwSize = 412;
     lpcb = 256 * pRasCon->dwSize;
     ReturnValue = false;
    
     if(RasEnumConnections(pRasCon, &lpcb, &lpcConnections) == 0)
     {
     RasConStatus.dwSize = 160;
     RasGetConnectStatus(pRasCon->hrasconn, &RasConStatus);
     ReturnValue = (RasConStatus.rasconnstate == 0x2000);
     }
    
     return(ReturnValue);
    }
    
    
    
    // Beispiel:
    
    int main()
    {
     if(CheckForConnection())
     {
     cout << "Connected to the Internet !";
     }
     else
     {
     cout << "Not connected to the Internet !";
     }
    }
    Quelle

    MFG
    xXsoureXx
     
  13. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.