[SOLVED] Programm mit Update Funktion und Vorstellung vom Neuling



  • Hallo Forum,

    erstmal möchte ich mich kurz vorstellen:
    Mein name ist Alex bin 28 Jahre alt und Programmiere aus Hobby seit ca. einem Jahr vor mich hin.
    Gelernt habe ich Elektroniker für Energie und Gebäudetechnik was eigentlich nicht viel mit PC zu tun hat. Zum Programmieren bin ich gekommen weil mich das schon immer interessiert hat und ich es einfach machen wollte und daher bei der IHK einen 5-Wöchigen "BASIS" Kurs gemacht habe. Sonst hab ich die ganz normalen hobby´s wie jeder andere auch 😃

    Nun zu meiner Frage:

    Und zwar sitze ich vor einem Programm das so ziemlich in die Endphase geht und schon einen recht guten Eindruck macht. Es ist ein Nachrichtsystem über Datenbank mit MySQL Server. Nun aber zu der Frage: Wie kann ich es am besten realisieren das ich mein Programm updaten kann (Lokales Netzwerk) Sprich ein Benutzer startet das Programm und überprüft erstmal seine Version und wenn es älter ist soll er die Neue Datei holen und kopieren. Realisiere ich das eher mit einem extra Programm oder wie würdet ihr es machen?

    Gruß

    Alex



  • Was genau ist das Problem?



  • Problem selber keins. Nur ob es eine saubere Lösung so wäre. So war der Gedanke. An sich das zu Programmieren dürfte kein Problem sein eine einfache Copy Funktion zu realisieren 😋
    Wollte hier ein paar Ideen sammeln wie das andere machen.

    Gruß



  • Du wirst fürs Updaten ein 2. Programm brauchen!
    Denn die alte Exe muss durch die neue Exe ersetzt werden. Das geht aber nicht, wenn die alte Exe ausgeführt wird.

    Ich würde den Updatecheck im Normal-Programm realisieren, ist ein Update möglich, wird das Update-Programm gestartet, das das Normal-Programm beendet und dann die neue Exe kopiert. So macht das fast jedes Programm.



  • Dann war ich mit den Gedanken ein "Mini" Kopierprogramm zu machen nicht verkehrt 🙂
    Mit einer Datenbank kann ich version Update sehr gut realisieren. Aber wie machen es die, die jetzt keine DB nutzen. Müssen ja irgendwo den Vergleich haben welche Version neuer ist.

    Gruß und danke





  • nickvan86 schrieb:

    Aber wie machen es die, die jetzt keine DB nutzen. Müssen ja irgendwo den Vergleich haben welche Version neuer ist.

    Du hinterlegst die Version einfach irgendwo?
    Das Program weiß welche Version es hat, kann abfragen welche die neueste ist und der Vergleich ist ja trivial. 😃



  • nickvan86 schrieb:

    Mit einer Datenbank kann ich version Update sehr gut realisieren. Aber wie machen es die, die jetzt keine DB nutzen. Müssen ja irgendwo den Vergleich haben welche Version neuer ist.

    Leg eine einfache Textdatei auf einem Webserver ab und lad die Datei mit einem HTTP Request :). Oder auch eine XML Datei. Je nachdem was du parsen willst. Für den Abruf empfehle ich libcurl.

    Beispiel: http://example.com/version_myapp.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <root>
    <version major="1" minor="0" patch="123"/>
    </root>
    


  • Mit XML unter Qt kenne ich mir überhaupt nicht aus. Wenn ich das versuche würde müsste ich alles mögliche im Forum fragen. Daher sollte ich mich vorher dort einlesen.
    Ich werde es mit einem kleinem Externen Programm probieren und dies dann ausweiten.

    Vielen Dank für die Hilfe 😋 👍



  • nickvan86 schrieb:

    Mit XML unter Qt kenne ich mir überhaupt nicht aus. Wenn ich das versuche würde müsste ich alles mögliche im Forum fragen. Daher sollte ich mich vorher dort einlesen.
    Ich werde es mit einem kleinem Externen Programm probieren und dies dann ausweiten.

    Vielen Dank für die Hilfe 😋 👍

    XML ist nun wirklich nicht schwer zu parsen.

    Webseite laden mit QT:
    http://stackoverflow.com/questions/1053099/how-can-i-get-content-of-web-page

    XML parsen:
    http://stackoverflow.com/questions/12913881/parse-a-xml-file-using-c-qt

    Und das ist wie gesagt nur für die versions informationen. Updaten musst du auf jeden Fall mit einem externen Programm. Aber, wenn der Updater ein update braucht, sollte deine Anwendung in der Lage sein erst das Update Programm zu aktualisieren, bevor es das startet.



  • Aber, wenn der Updater ein update braucht, sollte deine Anwendung in der Lage sein erst das Update Programm zu aktualisieren, bevor es das startet.

    Ja das sollte auch noch funktionieren 😃

    Danke für die Links. Werde gleich mal nachlesen 👍


Anmelden zum Antworten