Wie eine Exe aus einer Exe starten?
-
Also die Suchfunktion und die FAQ haben nix gebracht.
Das Problem:
Eine Exe beinhaltet eine 2.Exe.
Die Haupt Exe nennen wir haupt.exe die zu ladene Exe load.exe .
So nun soll die load.exe von der Haupt.exe gestartet werden.Das Problem jetzt: die load.exe soll ohne zwischen zu speichern gestartet werden.
Es müsste die load.exe in Ram geladen werden zum starten oder so ähnlich.
Hatt einer sowas mal gemacht?
-
Die einzige Möglichkeit mit ANSI C sowas zu lösen ist die Funktion man: system(3). Da du für Windows programmierst, wäre besser, wenn du mit der WinAPI es löst, da findest du bestimmt bessere Möglichkeiten. Aber frag dann ins WinAPI Forum.
-
Vielleicht lädst du die gesammten Daten der eingebauten Exe in den Ram, in dem du sie explizit dort hin kopierst (also
memcpy). Nun musst du die Adresse der Einstiegsfunktion kennen/ermitteln. Dann kannst du sie theoretisch über einen Zeiger aufrufen. K. A. ob das so geht, aber es _müsste_ eigentlich
.
-
Also memcpy ist interessant.
Nur wie soll der was in RAM laden können? Und da die 2.Exe starten können?Wie soll ich denn die haupt.exe in Ram laden und gleich zeitig lesen?
-
Ne das funktioniert nicht, außerdem wäre man damit Plattformabhängiger als mit ner Winapi-Funktion.
ShellExecute könntest du verwenden oder CreateProcess, einfach mal in der msdn nach diesen beiden Funktionen suchen.