Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Patches programmieren (https://www.delphipraxis.net/44710-patches-programmieren.html)

PierreB 23. Apr 2005 09:11


Patches programmieren
 
Guten Morgen :hi:

Wie programmiert man eigentlich Patches ? Ich meine kleine Programme die ein anderes fertiges Programm verändern. Zum Beispiel wollte ich die Caption eines Programmes mittels eines Patches verändern. Wie geht das ?

Thx

Filou 23. Apr 2005 09:22

Re: Patches programmieren
 
Du musst die compilierten Teile des Projekts austauschen, d.h. die exe-Datei und/oder die *.dcu-Dateien

PierreB 23. Apr 2005 09:27

Re: Patches programmieren
 
Zitat:

Du musst die compilierten Teile des Projekts austauschen, d.h. die exe-Datei
Mit was soll ich die denn Austauschen ? In meinem speziellen Falle wollte ich einfach ein kleines (was weiß ich) 50KB Patch der die Caption eines meiner Programme ändert.

arbu man 23. Apr 2005 09:36

Re: Patches programmieren
 
Hier im Forum suchenFindWindow diese function ermöglicht es dir das handle eines Fenster zu bekommen und mit dem handle kann man dann bestimmt auch die Caption verändern - wie? da gibt es einige themen in der dp such mal "Inhalt eines Fremden Editfeldes verändern" oder so

alcaeus 23. Apr 2005 09:39

Re: Patches programmieren
 
Du musst eigentlich das tun, was ein Resourcenhacker machen kann: den Text in der compilierten exe veraendern. Wie man das genau macht wuesste ich jetzt auch nicht, aber ich schaetze mal, du machst ein Patchfile. Du hast die alte exe und die neue, und laesst diese bitweise vergleichen. Die Unterschiede schreibst du dir in eine Datei, und das Patchprogramm gleicht dann die Unterschiede aus (z.B. macht aus einem "A" ein "B"). So hast du ein kleines Patchprogramm.

@Filou: Das macht garantiert KEIN Patchprogramm. Wozu brauch ich ein Programm um Dateien auszutauschen? Das kann der Nutzer auch selbst.

@arbu man: Bei der naechsten Ausfuehrung ist die Caption dann gleich. So wie ich das verstanden habe, will er die exe selbst patchen.

Greetz
alcaeus

MathiasSimmack 23. Apr 2005 09:42

Re: Patches programmieren
 
@arbu man: Weißt du überhaupt, was ein Patch ist? :gruebel:

Üblicherweise versteht man unter einem Patch eine kleine Binärdatei, die eine andere Datei ändert. Das heißt, es wird in den Bytes der Datei rumgeschrieben, so dass aus der Version 1.0 plötzlich Version 1.1 wird, usw.
Klar wird dabei nicht wild in der Datei herumgeschrieben, sondern das Patchprogramm vergleicht die alte und die neue Version und notiert sich quasi nur die Änderungen. Nachteil: Der Patch ist nur auf eine bestimmte Datei (damit meine ich die Version!) anwendbar. Vorteil: Während die neue Exe vllt. mehrere 100k ausmacht, ist so ein Patch unter Umständen nicht mal 100k groß. Nachteil: Gibt es mehrere Versionen der Exe (v1.0, v1.1, v1.2), die alle gepatcht werden sollen (auf v2.0), dann müssen auch entsprechend viele Patches veröffentlicht werden, oder man stellt gleich die neue Exe zur Verfügung. :stupid:

Lange Rede, kurzer [dp="MakeUpd"]Klick[/dp].

PierreB 23. Apr 2005 09:45

Re: Patches programmieren
 
@alci und Mathias: Ja genau sowas meinte ich.

Vielen Dank für den Link ich gugge mal ob ich was brauchbares finde. ;)

3_of_8 23. Apr 2005 10:30

Re: Patches programmieren
 
Ich kann für nichts garantieren, aber du könntest beide EXEn als TextFiles öffnen, die exakte Position im Str angeben, bei der sich neu und alt unterscheiden und die Änderung, als Record abspeichern und dann im Patch selbst diese Datei wieder auslesen und Änderungen durchführen lassen.

MathiasSimmack 23. Apr 2005 10:55

Re: Patches programmieren
 
Zitat:

Zitat von 3_of_8
Ich kann für nichts garantieren

Dann lass es lieber. Unter dem genannten Link findet sich irgendwo ein mit Delphi geschriebenes Programm, das den ganzen Patchprozess von sich aus übernimmt. Außerdem kann es Patches mit mehr als nur einer Datei erzeugen. Das heißt, du kannst auf einen Rutsch mehrere Dateien aktualisieren lassen. Ebenso lassen sich neue Dateien hinzufügen und nicht mehr benötigte (obsolete) Dateien entfernen. Und das ganze funktioniert etwas anders als deine Textdatei-Idee. Sorry.

woki 23. Apr 2005 11:11

Re: Patches programmieren
 
Hi,

es sei aber doch eerwähnt, dass, selbst wenn man vom Einspielen von Patches, oder dem Patchen eines Programmes spricht, heutzutage doch meistens gemeint ist, dass ein Programm (und um Himmels Willen nicht der User manuell), Dateien austauscht.

Grüsse
Woki

PierreB 23. Apr 2005 12:22

Re: Patches programmieren
 
Zitat:

Unter dem genannten Link findet sich irgendwo ein mit Delphi geschriebenes Programm, das den ganzen Patchprozess von sich aus übernimmt
Genau das hab ich jetzt. Danke nochmal.

Das mit nem Hexeditor sollte aber eigentlich auch gehen, oder ?

Speedmaster 23. Apr 2005 12:29

Re: Patches programmieren
 
Das ganze muss nicht sein wenn man die Ressourcen aus DLL's läd!

brechi 23. Apr 2005 12:32

Re: Patches programmieren
 
wenn man viel auslagert sind die einzelenen dateien kleiner, dann muss man nur die änderungen weitergeben.
problem beim patchen ist wenn sich z.b. die größe einer exe ändert,dann wirds komplizierter. Wollte mal so einen patchersteller schreiben wenn ich in den nächsten tagen mal zeit habe mach ich das mal :)

alcaeus 23. Apr 2005 12:33

Re: Patches programmieren
 
Zitat:

Zitat von Speedmaster
Das ganze muss nicht sein wenn man die Ressourcen aus DLL's läd!

Na bravo. Dann muss ich eben eine 200 KB-DLL austauschen/patchen anstatt einer 250 KB-exe. Das bringts ja :roll:
Fakt ist: sobald sich ein Programm aendert, muss man die Aenderungen zum Kunden bringen. Ob ich eine DLL patche oder eine EXE macht keinen Unterschied ;)

Greetz
alcaeus

PierreB 23. Apr 2005 12:36

Re: Patches programmieren
 
DLL patchen ginge bei mir auch nicht weil ich keine DLL's verwende. Und die Endanwendung ist mittlerweile 3500KB groß, wenn ich da jedesmal die richtige EXE austauschen müsste... ;)

Catbytes 23. Apr 2005 12:51

Re: Patches programmieren
 
Hallo,

da ich das grad für mein aktuelles Projekt umgesetzt habe, hier mal, wie ich das gelöst habe.

Ich habe ein Zusatzprogramm (Updater.exe) geschrieben, daß aus dem Hauptprogramm aufgerufen wird. Das Hauptprogramm wird dann geschlossen (eine offene Datei zu patchen wird schwer). Das Update-Programm läd sich dann von meiner Homepage das aktuelle Update herunter, das kumulativ ist.

Alle relevanten Daten werden dann getauscht und das Update-Programm ruft dann das Hauptprogramm wieder auf und beendet sich selber.

Das ganze habe ich noch mit einer Art Scriptsprache versehen, falls doch noch andere Programme vor dem Hauptprogramm ausgeführt werden müssen, oder falls andere Dateien in anderen Verzeichnissen kopiert werden müssen.

Jetzt muß ich mir nur noch überlegen, wie ich das mache, wenn ich das Updater-Programm updaten will. Vermutlich prüfe ich noch vor dem Aufruf des Updater-Programms, ob auch dort eine neue Version existiert und tausche es vor dem Aufrufen auf. Ist zwar kompliziert und mit viel Arbeit verbunden, aber bei klappt das einwandfrei.

Ablauf:
* User oder Programm prüft auf Updates
* Update wird gefunden und das Updater-Programm wird geprüft, ob auch hier neue Updates vorliegen
* Wenn ja -> aktuelles Updater-Programm wird heruntergeladen
* Hauptprogramm ruft Updaterprogramm auf und beendet sich selbt
* Updater-Programm läd Dateien herunter und aktualisiert
* Updater-Programm ruft wieder Hauptprogramm (oder andere) auf und beendet sich selbst

Symantec macht das mit Live-Update ganz ähnlich.

Die Scriptdatei sieht bei mir z.B. so aus:
Code:
<UPDATE>
<FILES>
/update/ramdefrag/onlineupdate/;ram_defrag.zip;[PROGRAMDIR];true
</FILES>

<START>
[PROGRAMDIR]ram_defrag.exe;0
</START>

</UPDATE>
Das Wort <UPDATE> leitet das Update ein
Unter <FILES> stehen die Dateien, die heruntergeladen werden, und wohin entpackt werden soll. "True", ob überschrieben werden soll, oder nicht.

Unter <START> alle Programme, die danach wieder aufgerunfen werden sollen. Die Zahl dahinter in Sekunden wielange gewartet werden soll, bis sich das Updateprogramm dann selbst beendet.

Bei weiteren Fragen - frag ;)

PierreB 23. Apr 2005 12:57

Re: Patches programmieren
 
Zitat:

Alle relevanten Daten werden dann getauscht und das Update-Programm ruft dann das Hauptprogramm wieder auf und beendet sich selber.
Welche Dateien werden ausgetauscht ? Die Haupt-EXE ?
Wenns wie bei mir 3,5 MB sind, was hast du für nen Traffic im Monat ?

MathiasSimmack 23. Apr 2005 13:28

Re: Patches programmieren
 
Zitat:

Zitat von PierreB
Zitat:

Alle relevanten Daten werden dann getauscht und das Update-Programm ruft dann das Hauptprogramm wieder auf und beendet sich selber.
Welche Dateien werden ausgetauscht ? Die Haupt-EXE ?

Die, die nötig sind. :roll: Wenn´s bei dir nur die Haupt-Exe ist, dann is´ es nur die eine Exe. Ein anderer muss neben der Exe vllt. auch noch ein paar DLLs austauschen, usw. ;) Deswegen spricht man ja auch von einem normalen Patch und einem kumulativen Update.

Im Prinzip machen beide das gleiche. Nur ein normaler Patch erwartet eine ganz bestimmte Version, weil er logischerweise immer nur zwei Dateien miteinander vergleichen kann. Bitte nicht falsch verstehen. Der Patch selbst kann meinetwegen 1000 Dateien aktualisieren. Aber bei jeder dieser 1000 Dateien wird immer nur die zu patchende alte Version (1.0, bspw.) mit der neuen 2.0 verglichen. Wer also bereits die Version 1.1 benutzt, kann den Patch 1.0->2.0 nicht verwenden, bzw. bestimmte Dateien, die nicht der erwarteten Version entsprechen, werden nicht aktualisiert.

Und da kommt das kumulative Update, das alle Updates enthält. Kennt man ja auch von den IE-Sicherheitsupdates. Meist reicht es, das jeweils aktuellste Update zu ziehen. Die vorher veröffentlichten sind mit drin. Darum kann so ein Update von einem User angewendet werden, der eine vollkommen ungepatchte Version hat. Und es kann ein User anwenden, der die vorher veröffentlichten Patches schon drauf hat. In solchen Fällen werden die Dateien, die sich innerhalb der einzelnen Versionen verändert haben (1.0->1.1->1.2->...->2.0) komplett reingepackt, weil eben der gezielte Vergleich zwischen Version X und 2.0 nicht möglich wäre, ohne Benutzer anderer Versionen auszuschließen.

magicm247 23. Apr 2005 16:35

Re: Patches programmieren
 
zum erstellen von patches nehme ich derzeit Patchmaker (s kumulative Update), ist sogar kostenlos.
http://www.clickteam.com/PatchMaker

Rauf auf den Webserver damit.
Ein Kleines updateprogramm fragt mit einem code an, ob eine neue version vorhanden ist.
wenn ja wird das entsprechende File geladen.

Die Frage ist jetzt nur, wie vergibt man diese prüfcodes.
Das kann
a) die Anwendung mit der Version sein, davon einen md5 machen
b) wie a) nur dass noch lizenz (Free,Privat,Pro) unterschieden wird, wenn man bestimmte Patches nur speziellen Lizenznehmern gönnen will/darf. Man kann hier auch einen Berechtigungs-key einbinden, der nur 1 Jahr gilt.
b) md5 über jede Datei und diese einzeln auf dem Server abfragen

bei a) und b) muss das update-programm den code irgend wo herholen und bei dem update muss dieser auch aktuallisiert werden.

Catbytes 23. Apr 2005 17:09

Re: Patches programmieren
 
Zitat:

Zitat von PierreB
Zitat:

Alle relevanten Daten werden dann getauscht und das Update-Programm ruft dann das Hauptprogramm wieder auf und beendet sich selber.
Welche Dateien werden ausgetauscht ? Die Haupt-EXE ?
Wenns wie bei mir 3,5 MB sind, was hast du für nen Traffic im Monat ?

Es werden die Dateien getauscht, die eben nötig sind. Ob das die Haupt-EXE ist oder nur die angepasste Hilfedatei, mußt Du wissen.

Im März hatte ich 5125033 KB bei knapp 130.000 Hits - war aber teilweise schon das 10-fache :wink:

Zum prüfen, ob eine aktuelle Version vorliegt:
In meinem Programm gibt es bestimmte Variablen, die mit jeder neuen Version geändert werden.

z.B.
Delphi-Quellcode:
  ProgVersion := '2.80';
  ProgRevision := 'Alpha2';
  ProgCopyrightYear := '©2002 - 2005';
  ProgCopyrightFirm := 'Catbytes Software';
  ProgCopyrightAuthor := 'Armin Cristalli';
  ProgName := 'RAM Defrag';
  ProgType := 'SHAREWARE-VERSION';
usw...

Diese Variablen nutze ich dann im ganzen Programm - sei es um die Caption zu erzeugen oder eben die Version zu prüfen. So vermeide ich auch, daß irgendwo noch eine alte Versionsnummer im Programm steht.

Auf dem Server liegt dann eine Textdatei, in der die Version auf dem Server gespeichert wird. Die wird per "HttpCli" aus den FPiette-Komponenten runtergeladen und verglichen. Stimmen beide überein, ist die Version noch aktuell - wenn nicht, startet eben auf Wunsch der Download wie oben beschrieben.

MathiasSimmack 23. Apr 2005 17:15

Re: Patches programmieren
 
Sicherer als so ein Versionsnummern-Vergleich ist aber allemal ein binärer Vergleich, so wie das dir mir bekannten Patchmaker machen. ;)

Jelly 23. Apr 2005 17:43

Re: Patches programmieren
 
Zitat:

Zitat von MathiasSimmack
Sicherer als so ein Versionsnummern-Vergleich ist aber allemal ein binärer Vergleich, so wie das dir mir bekannten Patchmaker machen. ;)

Ja, aber eine unterschiedliche Binärdatei heisst aber noch nicht zwangsläufig, daß es eine neue Version darstellt... Es kann ja auch eine veraltete sein... Um einen einleitenden Versionencheck vor dem Patch kommt man meines Achtens nicht herum.

Neben den von dir genannten Delphi Programm (update.exe) gibts auch noch andere Lösungen. Patchfactory ist z.B ein alternatives Tool. Kostet aber leider ein bischen :-(

Aber alles in allem wurde ein Programm bislang noch nicht besprochen. Nehmen wir an, auf einem Webserver liegt ein Patch (also ein richtiges Patch, das nur die Unterschiede beinhaltet), welches eine Version 2.0 zu 3.0 updatet. Das stellt kein Problem dar. Was aber, wenn der Benutzer noch selbst Version 1.0 nutzt, und in einem Schritt auf Version 3.0 updaten will. Das vorliegende Patch ist für ihn sinnlos... MSI Installationsskripte bieten jedoch aúch ein Möglichkeit, dieses Problem zu lösen. Allerdings kriegt man das nicht mit Installshield Express hin, das bei Delphi Prof. beiliegt, sonder man braucht dazu schon die Vollversion oder Wise. Die Dinger kosten aber gleich ein Arsch voll Geld.

Ich bastele gerade selbst an einer Lösung, wie man dieses Problem beheben kann. Das Ganze soll dann irgendwann in Rema einfliessen. Mehr zu dem Programm hier.

Garfield 23. Apr 2005 18:16

Re: Patches programmieren
 
Zitat:

Zitat von PierreB
Das mit nem Hexeditor sollte aber eigentlich auch gehen, oder ?

Dann vielleicht lieber damit: PE Resource Explorer?

3_of_8 23. Apr 2005 18:20

Re: Patches programmieren
 
Zitat:

Zitat von MathiasSimmack
Zitat:

Zitat von 3_of_8
Ich kann für nichts garantieren

Dann lass es lieber. Unter dem genannten Link findet sich irgendwo ein mit Delphi geschriebenes Programm, das den ganzen Patchprozess von sich aus übernimmt. Außerdem kann es Patches mit mehr als nur einer Datei erzeugen. Das heißt, du kannst auf einen Rutsch mehrere Dateien aktualisieren lassen. Ebenso lassen sich neue Dateien hinzufügen und nicht mehr benötigte (obsolete) Dateien entfernen. Und das ganze funktioniert etwas anders als deine Textdatei-Idee. Sorry.

Probieren kann mans ja mal. Wäre eine einfache Möglichkeit, ich probiers gleich mal aus.

MathiasSimmack 23. Apr 2005 18:33

Re: Patches programmieren
 
Ich wollte dich nicht bremsen, so war das nicht gemeint. Probiere ruhig! Nur bedenke bitte, dass die neuere Exe-Datei (oder generell die neue Dateiversion) kleiner oder auch größer als die alte sein kann. Ein Bytevergleich reicht also nicht. Position und evtl. Größe der unterschiedlichen Blöcke müsstest du also auch berücksichtigen, ... usw. usw.

Nicht zu vergessen, dass ein Bytevergleich u.U. ein "Vergleichsprotokoll" erzeugt, das um ein Vielfaches größer ist als die zu patchende Datei. Eine Komprimierung darf´s also auch noch sein. :stupid:

3_of_8 23. Apr 2005 18:44

Re: Patches programmieren
 
:shock: :pale:

Mal schaun. Aber afaik dürfte das die bessere Lösung sein, solange ungefähr die Hälfte der Exe gleich bleibt.

MathiasSimmack 23. Apr 2005 19:15

Re: Patches programmieren
 
Zitat:

Zitat von Jelly
Zitat:

Zitat von MathiasSimmack
Sicherer als so ein Versionsnummern-Vergleich ist aber allemal ein binärer Vergleich, so wie das dir mir bekannten Patchmaker machen. ;)

Ja, aber eine unterschiedliche Binärdatei heisst aber noch nicht zwangsläufig, daß es eine neue Version darstellt... Es kann ja auch eine veraltete sein... Um einen einleitenden Versionencheck vor dem Patch kommt man meines Achtens nicht herum.

Entschuldige, ich habe mich nicht richtig ausgedrückt. Die Tools, die ich kenne, erstellen von der zu patchenden Datei eine Art Prüfsumme o.ä., mit deren Hilfe sie die Datei später als berechtigt erkennen. Wenn die Datei jetzt bereits durch einen anderen (neueren) Patch aktualisiert wurde, ändert sich logischerweise auch diese Prüfsumme, und der alte Patch würde gar nicht mehr funktionieren.
Das Problem, das man sich u.U. alte Dateiversionen einfängt, tritt IMHO nur bei Updates auf, die die zu ersetzenden Dateien komplett enthalten. Also keine Patches im Sinn des Wortes. Und da hast du dann natürlich Recht. In solchen Fällen wird nach der Versionsnummer geguckt. Wenn man dann als Entwickler merkt, dass man gar keine Versionsnummer benutzt hat, na ja ... :lol:

3_of_8 24. Apr 2005 10:23

Re: Patches programmieren
 
Bei BMPs und bei TXTs funktioniert es perfekt, aber ich habe noch ein Prob bei EXEn und WAVs. Mal sehen.

3_of_8 24. Apr 2005 14:24

Re: Patches programmieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Bittesehr, funktioniert perfekt. Man muss halt immer zuvor schauen, ob es sich rentiert, einen Patch zu erstellen oder die komplette Datei weiterzugeben.

Mit WinRar kann man die Patches oft noch auf mehr als auf die Hälfte der Dateigröße verringern.

Und wundert euch nicht, wenn es bei manchen Dateien ziemlich lange dauert, wenn ihr auf "Patch erstellen" klickt, schließlich werden die beiden Dateien byteweise verglichen.

Es funktioniert übrigens mit ALLEN Dateitypen, nicht nur mit EXEn.

MathiasSimmack 24. Apr 2005 14:29

Re: Patches programmieren
 
Zitat:

Zitat von 3_of_8
Bittesehr, funktioniert perfekt. Man muss halt immer zuvor schauen, ob es sich rentiert, einen Patch zu erstellen oder die komplette Datei weiterzugeben.

Kann man bei einem Patchtool bequemer einstellen. :gruebel: Jetzt muss ich allerdings selbst mal überlegen. Kann MakeUpd den Ordnervergleich (zwischen Ordner "alt" und Ordner "neu"), bei dem alle Dateien automatisch verglichen werden, von sich aus, oder war das eine der Modifikationen, die ich für mich privat gemacht habe? :oops: Ich weiß es nicht mehr. Habe das Ding auch schon ewig nicht mehr gebraucht. Wie auch immer. Man kann den Ordner mit der Version 1.0 angeben und dann den Ordner mit der Version 1.1. Das Tool liest alle Dateien ein, ignoriert die, die sich nicht geändert haben und listet alle auf, die aktualisiert werden müssen, hinzukommen oder entfernt werden sollen. Dann konnte man noch entscheiden, ob eine der zu patchenden Dateien doch lieber komplett integriert sein soll (Vor-Version damit unerheblich), und per Knopfdruck ging´s dann los.

Zitat:

Mit WinRar kann man die Patches oft noch auf mehr als auf die Hälfte der Dateigröße verringern.
:stupid: Üblicherweise ist der Patch selbst gepackt, so dass man keinen externen Packer mehr braucht.

Zitat:

Und wundert euch nicht, wenn es bei manchen Dateien ziemlich lange dauert, wenn ihr auf "Patch erstellen" klickt, schließlich werden die beiden Dateien byteweise verglichen.
Ich weiß nicht, wie MakeUpd vorgeht, aber da geht´s ratzfatz. Ich sagte ja, ganz so einfach ist das Thema nicht. ;)

3_of_8 25. Apr 2005 14:12

Re: Patches programmieren
 
Was erwartest du?
Ich bin 14, habe keine Vorerfahrung und hab das Teil in 4 Stunden geproggt, davon war viel Test.

Garfield 7. Mai 2005 22:05

Re: Patches programmieren
 
Ich hab den PatchmakerV1.0. mal ausprobiert. Der Patch war so 3 MB bei einer 800 kB EXE. Nach dem Patchen war allerdings die gepatchte EXE verschwunden, während der Patch noch da war.

PierreB 8. Mai 2005 09:00

Re: Patches programmieren
 
Seltsam, ich hatte es auch mal probiert und es ging. Das Programm war so 600KB groß und der Patch 750KB.

3_of_8 8. Mai 2005 10:32

Re: Patches programmieren
 
@Garfield: Meine Tests waren alle erfolgreich. ich hatte keine probleme. DIe alte datei wird übrigens nach dem patchen in die neue umbenannt.

Ich sagte auch nicht, dass es ein besonders gutes Programm ist. Ich wollte nur zeigen, dass es funktioniert.

Garfield 8. Mai 2005 22:46

Re: Patches programmieren
 
Zitat:

Zitat von 3_of_8
DIe alte datei wird übrigens nach dem patchen in die neue umbenannt.

Vielleicht liegt dort die Ursache. Die Dateien haben den selben Namen und lagen beim Erstellen des Patches nur in verschiedenen Verzeichnissen.

Zitat:

Zitat von 3_of_8
Ich sagte auch nicht, dass es ein besonders gutes Programm ist. Ich wollte nur zeigen, dass es funktioniert.

Ich wollte auch nur sehen, wie so etwas funktioniert.

3_of_8 10. Mai 2005 17:03

Re: Patches programmieren
 
Naja, ich habe zumindest wieder etwas gelernt. Danke an alle, die es getestet werden, und jetzt höre ich besser auf, hier zu posten, sonst werden die Mods wieder gaaanz sauer.

Boombuler 11. Mai 2005 07:07

Re: Patches programmieren
 
Hi,

Such mal mit WinMerge alle unterschiede herraus die bei der neuen und alten Datei auftauchen wenn es nur ein paar byte sind kannst du ja locker n Patch schreiben der diese ändert. Dafür kann ich dir auch ein paar Zeilen Code zukommen lassen wenn du damit Probleme hast! Eigentlich seh ich da wenig Probleme dafür einen Patch zu coden!

Greetz
Boombuler

3_of_8 11. Mai 2005 12:33

Re: Patches programmieren
 
WinMerge? Kenn ich nicht. Ansonsten ist deine Idee wohl die gleiche, wie die, die ich in meinem Programm verwendet habe.

PierreB 14. Mai 2005 17:26

Re: Patches programmieren
 
Da das mit den anderen Patch Programmen doch nicht so gut geklappt hat, habe ich jetzt mal PatchFactory ausprobiert und bin recht zufrieden damit. Es funktioniert eigentlich ziemlich simpel.
TRotzdem bin ich immer noch auf der Suche sowas selbst zu machen. Ist es nicht irgendwie möglich die einzelnen Bytes einer EXE zu verändern ?

Garfield 14. Mai 2005 19:04

Re: Patches programmieren
 
Zitat:

Zitat von PierreB
... habe ich jetzt mal PatchFactory ausprobiert und bin recht zufrieden damit. Es funktioniert eigentlich ziemlich simpel. ...

295,00 € sind aber auch nicht wenig.

Zitat:

Zitat von PierreB
Ist es nicht irgendwie möglich die einzelnen Bytes einer EXE zu verändern ?

Ich denke, so einfach ist das nicht. Es werden sicher nicht nur einzelne Bytes/Bits geändert, sondern auch welche entfernt oder eingefügt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:41 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-2025 by Thomas Breitkreuz