Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Laufende Applikation überschreiben (https://www.delphipraxis.net/133457-laufende-applikation-ueberschreiben.html)

mr_emre_d 2. Mai 2009 05:12


Laufende Applikation überschreiben
 
Ich würd gerne wissen, ob es irgendwie möglich ist, eine laufende Anwendung aus derselbigen zu überschreiben.

MfG

Matze 2. Mai 2009 07:02

Re: Laufende Applikation überschreiben
 
Hallo,

meines Wissens nicht. Ich sehe auch keinen Sinn dahinter, der Anwendung den Boden unter den Füßen wegzuziehen. Denn die Datei muss ersetzt und wieder neu gestartet werden. D.h. der laufende Prozess weiß nichts von einer neuen Datei. Auch stimmen die Speicherbereiche nicht mehr überein.
Ich kann mir aber nicht vorstellen, dass eine laufende Anwendung ersetzt werden kann (da müsste eine schöne Fehlermeldung kommen).
Vielleicht geht es, wenn man einzelne Bits manuell verändert, aber das ist natürlich auch nicht zu empfehlen.

Worum geht's denn? Um einen Updater?

Falls ja, suche mal im Forum, da gibt es einige Lösungen, u.a. mittels Batchdatei.

Grüße, Matze

lbccaleb 2. Mai 2009 07:35

Re: Laufende Applikation überschreiben
 
Ich glaube mich erinnern zu können das es so ein bsp. auf der Assarbad-Seite gab, musst mal dort nachsehen und rumstöbern...

mr_emre_d 2. Mai 2009 07:38

Re: Laufende Applikation überschreiben
 
Zitat:

Zitat von Matze
..der laufende Prozess weiß nichts von einer neuen Datei

Das kann doch dem Prozess egal sein (oder nicht?)! Denn das Image wird doch direkt nach dem Start in den RAM gemappt/geladen.

Zitat:

Zitat von Matze
Worum geht's denn? Um einen Updater?

Nein, es geht nicht um einen Updater (keine 0815 Geschichten)

Ich habe vor, einen polymorphen Crypter (bzw iwas in die Richtung) zu schreiben - deshalb ist es von Nöten, direkt aus der Applikation aus die Applikation (sowohl im Speicher, als auch) auf der Harddisk zu ändern.

PS: Inwiefern bist du dir sicher, dass das nicht geht?

MfG

mkinzler 2. Mai 2009 07:48

Re: Laufende Applikation überschreiben
 
Dann verwende dafür eine Dll, diese kannst du zur laufzeit Entladen, Ersetzen und und dann wieder Laden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:39 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