AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Delphi Patcher erstellen

Ein Thema von xReva · begonnen am 15. Nov 2016 · letzter Beitrag vom 15. Nov 2016
Antwort Antwort
Seite 1 von 2  1 2   
xReva

Registriert seit: 15. Nov 2016
20 Beiträge
 
#1

Delphi Patcher erstellen

  Alt 15. Nov 2016, 09:18
Delphi-Version: 5
Hey, ich wollte ganz gerne über Delphi ein Programm schreiben das Dateien von dem PC aus mit Dateien auf einem Webserver vergleicht und gegebenenfalls die Dateien auf dem PC dann aktualisiert.

Ich habe im Forum schon mehrere Threads zu dem Thema vergleichen von Dateien gelesen bin aber noch zu keiner Lösung gekommen

Deswegen wollte ich mal selber nachfragen und gegebenenfalls eine Diskussion starten ob jemand eine Lösung für mein Problem hat.


Mfg
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 09:24
Woran hängt es denn genau? So wie du die Frage formuliert hast ist sie etwas sehr offen.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
xReva

Registriert seit: 15. Nov 2016
20 Beiträge
 
#3

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 09:29
Oh generell weis ich nicht wirklich wo ich anfangen soll ich habe zum Großteil nur mit C programmiert und lerne jetzt für die Schule Delphi und habe mir das als Projekt vorgenommen ich weiß nur leider nicht so ganz wie ich das Umsetzen soll eine kleine Hilfe oder generell einen Code wo ich mich reinlesen und verstehen kann wäre schon sehr Hilfreich
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 10:05
Hallo,
ich würde erst mal ohne Webserver anfangen.

geg: 2 Dateien in unterschiedlichen Verzeichnissen
ges: Diff dieser Dateien

Google "delphi compare files" liefert

http://stackoverflow.com/questions/4...of-two-tstream

2 Dateien -> 2 TFileStreams -> per Copy 2 TMemoryStreams
damit könntest du anfangen.
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.651 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 10:23
ganz so simpel ist das nicht, binäre diffs

ein Ansatz wäre rdiff (basis von rsync), da müsstest Du evtl was lesen können als C Entwickler
Ansonsten wäre https://github.com/OctopusDeploy/Octodiff eine C#-Implementation

für Delphi ist mir nichts bekannt.
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 10:27
Man muss ja theoretisch nicht gleich die Dateien auf binärer ebene vergleichen.
Ist sowieso keine so gute Idee wenn der Kram vom Webserver kommt, weil man dann entweder die alte Version hochladen muss damit der Webserver vergleichen kann oder man muss die (möglicherweise) neue Version runterladen um sie mit der alten zu vergleichen bevor man weiß ob sie tatsächlich neuer ist. Da ist es einfacher über Hashes oder sogar nur Versionsnummern zu gehen.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.173 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 10:32
Wer hat denn was von binären Dingen und nur Differenzen übertragen gesagt? Er hat bislang nur "Daten" und "vergleichen" gesagt. Geht es um Text- oder Grafikdateien? Willst du einfach nur sehen ob "Datei A" gleich/ungleich "Datei B" ist"? Zum Beispiel "Wenn Datei A anders ist als das Gegenstück auf Internetserver X, dann lade sie von Internetserver X neu herunter und ersetze Datei A damit". Reicht das nicht schon?
  Mit Zitat antworten Zitat
dGeek
(Gast)

n/a Beiträge
 
#8

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 10:56
Zitat:
geg: 2 Dateien in unterschiedlichen Verzeichnissen
ges: Diff dieser Dateien
Bietet sich hier nicht wunderbar ein MD5-Hash-Vergleich an?
Angehängte Dateien
Dateityp: zip MD5File.zip (676,9 KB, 5x aufgerufen)

Geändert von dGeek (15. Nov 2016 um 11:05 Uhr)
  Mit Zitat antworten Zitat
Progman

Registriert seit: 31. Aug 2007
Ort: 99974 MHL
695 Beiträge
 
Delphi 10.1 Berlin Starter
 
#9

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 11:09
Vor Jahren hatte ich mal ein ähnliches Update-System geschrieben. Das Prinzip basierte auf der Versionsnummer und einer kleinen Exe-Datei, die das Handling übernimmt.
Beispiel:
Das aktuelle Programm auf dem PC hat die Versionsnummer 2.0.1, auf dem Server liegen Updates bis zur aktuellen Version 2.0.3.
Verwaltet wird alles durch eine zentrale Info-Datei (empfohlen XML), in der die vorhandenen Versionsnummern und Links bzw. Dateinamen der Update-Dateien zu jeder Versionsnummer eingetragen sind.
Das Update-Programm (aufgerufen durch das eigentliche Programm) auf dem PC lädt die Info-Datei, sucht seine Versionsnummer 2.0.1 und erfährt dadurch den Link zur nächsten Update-Datei auf 2.0.2. Diese Datei wird heruntergeladen und das alte, vorher geschlossene Programm damit überschrieben.
Beim nächsten Programmstart wird das wiederholt und resultiert in Version 2.0.3. Beim folgenden Programmstart wird keine höhere Versionsnummer gefunden und das Programm ist auf dem neuesten Stand.
Leider Habe ich davon keine Dateien mehr, da das noch in meiner Zeit der Berufstätigkeit war, ich aber seit 2012 Rentner bin und die ganze Software in der Firma blieb, die allerdings nicht mehr existiert.
Karl-Heinz
Populanten von Domizilen mit fragiler, transparenter Aussenstruktur sollten sich von der Translation von gegen Deformierung resistenter Materie distanzieren!
(Wer im Glashaus sitzt sollte nicht mit Steinen werfen)
  Mit Zitat antworten Zitat
dGeek
(Gast)

n/a Beiträge
 
#10

AW: Delphi Patcher erstellen

  Alt 15. Nov 2016, 11:35
Zitat:
Diese Datei wird heruntergeladen und das alte, vorher geschlossene Programm damit überschrieben.
Interessehalber: wie hat sich bei dir denn die kleine Exe-Datei (der Updater ansich) aktualisiert?
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz