Deutsch
Forum

Schreiben in ausgeführte EXE-Datei

 

Jac
de
Lad
Hallochen,

ist es möglich in die EXE-Datei des gelinkten Compilats zu schreiben, während es ausgeführt wird?

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
16.12.2005  
 



Nein, ich glaube nicht.
 
16.12.2005  
 




Frank
Abbing
Ich glaub auch nicht.
Aber vielleicht inspiriert dich sowas:
KompilierenMarkierenSeparieren
Declare text$
Assign #2,("Source.prf")
Rewrite #2
Print #2,"Cls"
Print #2,"Print ";Chr$(34);"Ich wurde erzeugt...";Chr$(34)
Print #2,"WaitInput"
Close #2
text$="ProfComp.exe Source.prf /b"
Shell text$
text$="ProfLink.exe Source.prc"
Shell text$
text$="Source.exe"
Shell text$
End
 
16.12.2005  
 




Michael
Wodrich
Klappt dann aber beim Kunden nur, wenn dieser selbst (X)Profan sein eigen nennt.

Ist trotzdem eine nette Sache. In diesem Zusammenhang vielleicht auch mittels Execute interessant für die einfachen Dinge.

Schöne Grüße
Michael Wodrich

@Jac:
Solche Bestrebungen gab es auch schon zu DOS-Zeiten. Am Einfachsten löste man dies dann mittels einer Stapeldatei.
- Es wird ein Programm aufgerufen, das die zu startende EXE an einer bestimmten Stelle trennt: Vorderer Teil ist die EXE, hinterer Teil eine Datenbank (oder was auch immer).
- Dann wird das eigentliche Programm aufgerufen (dieses versorgt dann die Datendatei)
- Dann wird wieder das Extraprogramm aufgerufen, das beide Teile zusammenfügt.

Nach dem Erstellen der EXE muß also einmal das Extraprogramm ran und die Teile vernähen.
Damit der Anwender den Braten nicht riecht erzeugt das Programm bei einem Aufruf ohne Parameter eine Meldung wie dieses PlugIn darf nur aus dem Hauptprogramm gestartet werden.
 
Programmieren, das spannendste Detektivspiel der Welt.
16.12.2005  
 



Mmh...

Bei PrivAktivate schreibe ich zwar in die eigene EXE - und sogar in den Quelltext (freischaltungsinfo) - aber nicht während sie ausgeführt wird...
 
16.12.2005  
 




Michael
Wodrich
Eigentlich bieten sich mit XProfan ja viele Möglichkeiten an. Wie wäre es mit folgender: (ProgEnd / %ProgEnd / Run)

Wieder 2 Programe. Programm A ist der Starter.
Seine Resource (einfach drankopiert) ist Programm B. Am Ende von Pgm B existiert eine drankopierte Resource mit vorgegebener Länge (oder Länge der Resource steht am Ende der Resourcendatei).

Pgm A ermittelt den Resourcenstart und die Länge (Dateilänge - %ProgEnd + 1).
Dieser Teil minus Resourcenlänge von Pgm B ist die EXE von Pgm B.
Die Resource von B wird als eigene Datei gespeichert.

Pgm B wird über Run aufgerufen.

Nachdem Pgm B fertig ist muß die Resource wieder an das Ende von Pgm A gespeichert (überschrieben werden). Danach wird Pgm A mit Run + Parameter aufgerufen um die Platte wieder aufzuräumen (EXE B und Daten).

So ganz Datensicher ist das allerdings nicht. Besser ist es, wenn die Möglichkeit der Resourcen-Änderung besteht. Dann können die Daten einfach mittels der Profan-eigenen Resourcenbefehle gelesen werden. Das Schreiben wäre dann wohl über API zu regeln (wenn diese Möglichkeit überhaupt existiert).

[box:3da9e7cd62]editiert:
Vergeßt das mit dem Resourcen ändern über API (siehe hier):
[...] 
Das würde nicht auf allen Systemen laufen...
[/box:3da9e7cd62]
 
Programmieren, das spannendste Detektivspiel der Welt.
16.12.2005  
 



So in der Art habe ichs auch geregelt. Wie gesagt,, auch ein Ändern von Quelltext im fertigen Programm wäre so möglich...
 
16.12.2005  
 




Jac
de
Lad
Jaja, mit %Progend hab ichs auch gemacht. Ich will an mein Prog eigentlich nur ne Checksumme anhängen. Da mach ich mir jetzt eben ein Extra-Prog, dass das übernimmt.

@Michael: Wie siehts eigentlich mit MD5 aus? Bei mir hat dein Quelltext nicht funktioniert...

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
16.12.2005  
 




Michael
Wodrich
In der ZIP ist doch eine reine Assemblerversion. Daraus machst Du Dir eine DLL und fertig.

Aber ich werds mal an meine ToDo-Liste anhängen...

---
Hoppla, habe eine MD5_DLL.zip mit Profan-Wrapper entdeckt. Die habe ich am 01.11.2004 aus dem Internet heruntergeladen. Ist damit das Thema nicht schon lange erledigt?!? (Wer hat den Wrapper gebastelt, da steht leider kein Name dabei)

Schöne Grüße
Michael Wodrich (dem die Schneeflöckchen langsam auf den Keks gehen).
 
Programmieren, das spannendste Detektivspiel der Welt.
16.12.2005  
 



Das Schreiben in die Exe eines sich ausführenden Programmes erlaubt WindowXP nicht - aber die Exe die sich selbst modifizieren will kann aus sich heraus sich selbst lesen.

Hiermit kann die Exe sich selbst kopieren - und die Kopie kann dann gepatcht werden. Anschließend ist nur noch die neue exe auszuführen, und die eigene Exe zu beenden.

Als Sahnehäubchen könnte die gepatchte Exe erkennen, daß sie am falschen Ort liegt - und sich an die selbe stelle kopieren wo die alte exe liegt einschliesslich das die dann wiederum am richtigen Ort gestartete exe auch noch die gepatchte löscht.

Lol.
 
17.12.2005  
 



...gepatchte EXE mit Parameter starten - so erkennt die gepatchte EXE, daß sie gepatched ist, löscht die alte EXE und kopiert sich dann auf den Platz der alten EXE. Danach erfolgt ein Neustart dieser kopierten EXE mit einem anderen Parameter. Daraus erkennt die kopierte gepatchte EXE, daß die gepatchte EXE noch gelöscht werden muß und löscht diese. Zwischen den ganzen Aktionen des kopierens und löschen muß Windows etwas Zeit zum Verschnaufen gegeben werden (Sleep). Wie viel Zeit da gegeben werden muß, hängt stark vom jeweiligen Rechner ab - ist also eine Sache, die auf unterschiedlichen Rechnern ganz gewaltig in die Hose gehen kann...
 
18.12.2005  
 




Jac
de
Lad
Oje, ich lass es lieber...

Jac
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
18.12.2005  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

3.561 Betrachtungen

Unbenanntvor 0 min.
AndreasS06.01.2019
H.Brill30.08.2014
Unbenannt11.02.2011

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie