![]() |
Re: Programm im RAM ausführen
Wenn du willst, dass der Code in nem Button Click ausgeführt wird, musst du den Code in die Ereignisbehandlunsroutine zu Button.OnClick schreiben.
|
Re: Programm im RAM ausführen
ahh ok habs.
thx :) bei müdigkeit coden lol ich glaub dat bringt nix. |
Re: Programm im RAM ausführen
Zitat:
|
Re: Programm im RAM ausführen
Eigendlich ist die Lösung des Problems recht einfach.
1. Programm mit CREATE_SUSPENDED-Flag starten 2. Speicher per ReadProcessMemory und WriteProcessMemory decodieren 3. per ResumeThread das programm laufen lassen Das sezt natürlich voraus das du den EXE-Header (inkl. PE-Header) nicht mitverschlüsselst und du dich vorher ein bisschen mit dem aufbau des PE-Headers beschäftigt hast. Gruß MCQ |
Re: Programm im RAM ausführen
Alter Thread, aber neues Problem :D Es geht um folgendes. Der Sinn sei jetzt bitte mal dahingestellt ..
Ich starte eine als Resource eingebundene EXE über die oben gepostete Funktion. Das funktioniert solange gut, wie beide EXEn die gleiche ImageBase haben. Nun hat meine eigene EXE aber die ImageBase $13140000 und die eingebundene EXE die ImageBase $00400000. Das Starten und Ausführen der eingebundenen EXE klappt trotzdem wunderbar - - - bis zu der Stelle wo ich in dieser versuche mittels CreateThread einen Thread zu erzeugen. Folgender Aufruf:
Delphi-Quellcode:
Ich vermute mal, dass die Adressenermittlung mittels @ fehlschlägt. Hat jemand eine Idee wie ich das umgehen kann?
CreateThread(nil, 0, @ThreadFunc, nil, 0, TID);
Gruß |
Re: Programm im RAM ausführen
lass Dir doch einfach mal den Wert anzeigen, den @ThreadProc liefert. Sollte der *immer* relativ zu $00400000 sein, musst Du einfach noch was dazu addieren, ich bezweifle allerdings, dass das so funktioniert.
|
Re: Programm im RAM ausführen
Was mir das gerade durch den Kopf geht wo ich diesen Thread lese, geht das auch mit einer Dll, diese aus dem Speicher zu laden? Vorzugsweise aus einem TMemoryStream. Hat da jemand eine Quelle zu ob und wie?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:49 Uhr. |
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