Neues Programm aus Hauptprogramm erstellen.. oder so..
-
Es soll in diesem Thread ja auch nicht um die "Beendung von Prozessen" gehen,
sondern eben nur um das oben genannte Problem
-
Mit Standard-C++ kannst du keine anderen Executables erstellen.
Mit Standard-C++ kannst du keine anderen Prozesse killen.Das ist alles Win-API oder Compiler-API etc. pp.
[wobei es ziemlich unsinnig wäre für so etwas on the fly ein Programm zu kompilieren statt mit Übergabeparametern oder Configfiles zu arbeiten]
-
Es gibt ein Programm namens ClickExe (glaube ich), das kann auch Executables erstellen. Schau doch einfach mal ob du da irgendwo Informationen auf der Webseite findest.
-
sascha451 schrieb:
Es soll in diesem Thread ja auch nicht um die "Beendung von Prozessen" gehen,
sondern eben nur um das oben genannte Problem
Deine Herangehensweise ist aber umständlich, deswegen zögern wir, dir das zu sagen :p .
Es ist natürlich möglich, neue Executables zu erstellen die vorher eingegebene Strings drin haben. Das ist aber eine ziemliche Frickelei. Viel einfacher wäre es, wenn du das über Dateien, Kommandozeilen oder Interprozesskommunikation löst. Für deinen Anwendungsfall ist wohl eine Konfigurationsdatei die passende Vorgehensweise.
-
Fellhuhn schrieb:
Mit Standard-C++ kannst du keine anderen Executables erstellen.
Mit Standard-C++ kannst du keine anderen Prozesse killen.Das ist alles Win-API oder Compiler-API etc. pp.
[wobei es ziemlich unsinnig wäre für so etwas on the fly ein Programm zu kompilieren statt mit Übergabeparametern oder Configfiles zu arbeiten]
Noch mal, und das geht auch an Kóyaánasqatsi, es ging mir um die Technik
und nicht um eine Lösung von außen.So ok dann weiß ich jetzt dass das mit Standart C++ NICHT geht.
Dann gucke ich mal ob ich meine Frage noch unter "WINAPI" oder so stelle,
falls ihr aber zufällig ein par Stichworte habt nach denen ich
suchen könnte, immer her damit
-
Mit Standard-C++ kannst du keine anderen Executables erstellen.
Natürlich geht das. In welcher Sprache ist wohl ein Compiler geschrieben? Alles was man braucht, ist eine Dateiausgabe, die C++ aber kennt.
Ist aber natürlich kein Anfängerthema, sondern eher ziemlich komplex.
Was noch einigermaßen für einen Anfänger bis Fortgeschrittenen Programmierer machbar ist, ist die Manipulation von Stringliteralen in anderen Executables. Daher wäre sascha451 Vorhaben wohl auch machbar, aber es wäre die mit Abstand schlechteste Lösung für sein Problem.
edit: hier eine Demo, wie man sowas machen kann, die ich vor langer Zeit mal als abschreckendes Beispiel geschrieben habe:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-248191-and-postdays-is-0-and-postorder-is-asc-and-highlight-is-executable-and-start-is-10.html
-
SeppJ schrieb:
Mit Standard-C++ kannst du keine anderen Executables erstellen.
Natürlich geht das. In welcher Sprache ist wohl ein Compiler geschrieben? Alles was man braucht, ist eine Dateiausgabe, die C++ aber kennt.
Ist aber natürlich kein Anfängerthema, sondern eher ziemlich komplex.
Was noch einigermaßen für einen Anfänger bis Fortgeschrittenen Programmierer machbar ist, ist die Manipulation von Stringliteralen in anderen Executables. Daher wäre sascha451 Vorhaben wohl auch machbar, aber es wäre die mit Abstand schlechteste Lösung für sein Problem.
edit: hier eine Demo, wie man sowas machen kann, die ich vor langer Zeit mal als abschreckendes Beispiel geschrieben habe:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-248191-and-postdays-is-0-and-postorder-is-asc-and-highlight-is-executable-and-start-is-10.htmlDas ist doch schon mal ganz nett.. etwas umständlich aber hoffe mal es funktioniert.
Jetzt habe ich am Anfang natürlich nur eine .exe und nicht zwei, somit müsste ich den "Neue Exe Prototyp" vorcompilen und in das Hauptprogramm einfügen.
Gibts dafür auch noch eine bessere Lösung (wobei jede Lösung hier wahrscheinlich
besser ist als das was ich vor habe, nähmlich den Binär-Code des Prototyps in einem riesigen Array zu speichern und dann auszugeben oO falls das überhaupt funktioniert..)Also könnte man den Prototyp zB. als Resource integrieren oder so was?
-
Das geht alles, hier wird zum Beispiel demonstriert wie man eine Bitmap in den Code einfügt, das geht natürlich auch mit einer vorcompilierten Exe:
http://thedailywtf.com/Articles/The-cbitmap.aspxBeachte: Das ist eine Seite wo kein guter Code vorgestellt wird. Die Leute machen sich dort darüber lustig, wie jemand überhaupt auf so eine hirnverbrannte Idee kommen kann. Willst du demnächst zu den Leuten gehören über die man sich auf dieser Seite lustig macht? Du bist gerade auf dem besten Weg dahin. Dein Ansatz ist die schlechtestmögliche Lösung für dein Problem!
-
Ähm, Sepp, das ist ein gaaaaanz schlechtes Beispiel von der Seite. Denn das was da kritisiert wird ist komplett normale standardisierte Praxis. Lies dir die Kommentare da durch, dann muss ich das nicht kommentieren.

-
Fellhuhn schrieb:
Ähm, Sepp, das ist ein gaaaaanz schlechtes Beispiel von der Seite. Denn das was da kritisiert wird ist komplett normale standardisierte Praxis. Lies dir die Kommentare da durch, dann muss ich das nicht kommentieren.

Ich weiß, dass das da angemessen war. Willst du aber behaupten, dass das in diesem Fall angemessen ist?