Announcement

Collapse
No announcement yet.

Internetverbindung mit InnoSetup prüfen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Internetverbindung mit InnoSetup prüfen

    Hallo liebe Entwickler und Gurus des Forums,

    brauche eure Hilfe bei der Prüfung von der aktiven Internetverbindung mit Inno Setup

    bei Deinstallation muss die Internetverbindung geprüft werden,

    habe aber über das checken von der Verbindung mit dem Server realisiert,

    function LicServerConnect (): Boolean;
    begin
    WinHttpReq := CreateOleObject('WinHttp.WinHttpRequest.5.1');
    WinHttpReq.Open('GET', 'https:server/', False);
    WinHttpReq.Send('');

    if WinHttpReq.Status <> 200 then
    begin
    if MsgBox( 'Es besteht zur Zeit keine Verbindung mit dem server. , mbConfirmation, MB_YESNO )=IDNO
    then
    begin
    Abort
    end;
    end;
    end;

    das funktioniert soweit gut, solange die Insternetverbindung da ist. Falls kein Internet da ist, dann wird Runtime Error von Inno Setup ausgelöst, was auch logisch ist, weil kein Internet da ist. was ich unschön finde, suche ich nach einer Lösung, da man erst nach aktiver Internetverbindung prüft.

    Gibt es die Möglichkeit mit Inno Setup auch nach Internetverbindung zu prüfen?

    Leider habe ich bis jetzt nichts gefunden.

    Bin für jeden Tipp dankbar!

    Gruß

    Lessy

  • #2
    https://stackoverflow.com/questions/...ing-inno-setup

    Würde sagen, im o.a. fehlt irgendwie die Fehlerbehandlung. Siehe obiger Link Code -> "except". Kenne allerdings Inno nicht
    Der HTTP-Status-Code (200), kommt vom Server und sagt nichts über eine bestehende Internetverbindung aus, sondern nur ob der Server die angeforderte Ressource gefunden hat oder nicht. Im übrigen würde jeder Status-Code aussagen, dass eine Verbindung besteht, denn der Server wurde erreicht und konnte antworten und wenn er mit einem 500er oder 400er antwortet. Umgekehrt, wenn der Server nicht da ist, heißt das ja nicht, dass keine Internetverbindung besteht.

    Wenn man die WIN API nutzen kann
    https://docs.microsoft.com/en-us/win...connectedstate
    Christian

    Comment


    • #3
      Ich kenne die Möglichkeiten von Innosetup auch nicht. Notfalls würde ich mir eine eigenständige Anwendung nehmen/erstellen, die während/vor dem Setup diese Prüfung durchführt und das dann auch möglichst aussagekräftig wiedergibt und es in Inno einbauen:
      - keine Netz
      - keine Verbindung ins Internet
      - keine Verbindung zum Lizenzserver
      - Lizenzserver Fehlernummer: xy
      - so oder ähnlich

      Erfahrungsgemäß hat Otto Normalverbraucher gern schon kein Verständnis dafür, dass es ein Unterschied ist, ob er bloß im WLAN ist oder (sogar) eine Internetverbindung hat. Aussagekräftige Meldungen sind da immer hilfreich.

      Comment


      • #4
        Ja, und solche anfängerhaft programmierten Anwendungen die eigenes Versagen einfach an den Nutzer weitergeben:

        "XYZ.. funktioniert nicht. Bitte prüfen Sie Ihre Internetverbindung und stellen Sie sicher, dass sie mit dem Internet verbunden sind"

        Tja, liebe Anwendung ich kann surfen, Mail abholen usw. Habe also Internetverbindung. Und nun?
        Christian

        Comment


        • #5
          Erstmal danke für eure Tipps!
          Und das ist wohl wahr, reicht nicht nur die Internetverbindung zu prüfen...Könnte der Fall sein, Internet ist da, aber Server antwortet nicht, der User kann damit nichts anfangen, warum das und das nicht funktioniert, obwohl ins Internet geht...
          Hilfe wird weiterhin gebraucht, als erstes nach Internetverbindung soll geprüft werden, wenn da ist, dann Verbindung mit dem Server checken. oder was ähnliches..

          Comment

          Working...
          X