PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gegenseitiges erstellen der *.Exe



Mr_gitarre
09.02.2012, 14:47
Hey leute:

versuche spaßeshalber 2 Exen sich gegenseitig wieder erstellen zu lassen...

Das "Gute" ist, ich weiß wirklich nicht, wie man das machen soll, denn um die eine Exe hinzuzufügen, muss die andere doch schon Kompiliert sein... Um diese zu Kompileren ist es notwendig, dass die 1.e exe auch schon kompiliert ist... Ein Teufelskreis...

...Irre...



Kann mir da jemnd. helfen...?




1. exe




While (http://www.autoitscript.com/autoit3/docs/keywords.htm) Sleep (http://www.autoitscript.com/autoit3/docs/functions/Sleep.htm)(20)
If (http://www.autoitscript.com/autoit3/docs/keywords.htm) Not (http://www.autoitscript.com/autoit3/docs/intro/lang_operators.htm) FileExists (http://www.autoitscript.com/autoit3/docs/functions/FileExists.htm)(@ScriptDir (http://www.autoitscript.com/autoit3/docs/macros.htm) & '\2.exe') Then (http://www.autoitscript.com/autoit3/docs/keywords.htm) FileInstall (http://www.autoitscript.com/autoit3/docs/functions/FileInstall.htm)('C:\2.exe', @ScriptDir (http://www.autoitscript.com/autoit3/docs/macros.htm) & '\2.exe')
Run (http://www.autoitscript.com/autoit3/docs/functions/Run.htm)(@ScriptDir (http://www.autoitscript.com/autoit3/docs/macros.htm) & '\2.exe')
EndIf (http://www.autoitscript.com/autoit3/docs/keywords.htm)
WEnd (http://www.autoitscript.com/autoit3/docs/keywords.htm)




2. exe



(http://www.autoitscript.com/autoit3/docs/keywords.htm)
While (http://www.autoitscript.com/autoit3/docs/keywords.htm) Sleep (http://www.autoitscript.com/autoit3/docs/functions/Sleep.htm)(20)
If (http://www.autoitscript.com/autoit3/docs/keywords.htm) Not (http://www.autoitscript.com/autoit3/docs/intro/lang_operators.htm) FileExists (http://www.autoitscript.com/autoit3/docs/functions/FileExists.htm)(@ScriptDir (http://www.autoitscript.com/autoit3/docs/macros.htm) & '\1.exe') Then (http://www.autoitscript.com/autoit3/docs/keywords.htm) FileInstall (http://www.autoitscript.com/autoit3/docs/functions/FileInstall.htm)('C:\1.exe', @ScriptDir (http://www.autoitscript.com/autoit3/docs/macros.htm) & '\1.exe')
Run (http://www.autoitscript.com/autoit3/docs/functions/Run.htm)(@ScriptDir (http://www.autoitscript.com/autoit3/docs/macros.htm) & '\1.exe')
EndIf (http://www.autoitscript.com/autoit3/docs/keywords.htm)
WEnd (http://www.autoitscript.com/autoit3/docs/keywords.htm)


dankö

fvuj
09.02.2012, 15:29
Das Problem mit der Henne und dem Ei.

Mr_gitarre
09.02.2012, 15:31
gibts da ne lösung oder existiert sie nicht...?

blackberry
09.02.2012, 15:34
Du kannst das Programm einfach an das andere anhängen (hinten an die Datei, oder etwas anspruchsvoller in Form von Ressourcen). In der einfachsten Form könnte man das schematisch so darstellen:

/-------------------\
| Datei: 1.exe |
| /---------------\ |
| | Programm 1 | |
| | | |
| \---------------/ |
| | Programm 2 | | <--- hinten angehängt.
| \---------------/ |
| |
\-------------------/

Ich bezeichne also mit 1.exe das gesamte "Paket" und mit "Programm 1" das eigentliche Programm. Dahinter steht Programm 2 (sozusagen als Anhang).

Wenn 1.exe nun 2.exe erstellen soll, so erstellt es die Datei 2.exe mit dem Inhalt Programm 2 und hängt Programm 1 einfach hinten dran. Die Kästchen im Schema werden also gewissermaßen umgedreht und 1.exe in 2.exe umbenannt.

Dieses "anhängen", wie ich es beschrieben habe ist tatsächlich möglich und ist oft das zugrundeliegende Prinzip von diesen 0815 EXE Bindern, wie sie das Web überfluten. Wenn man das ganze nun etwas anspruchsvoller halten will und gerne mit Ressourcen arbeitet hat man noch den Zusatzaufwand, dass man nicht einfach die Programme "umdrehen" kann, da die Ressourcen von Programm 1 auch in Programm 1 liegen (also Programm 2, wenn es Ressource von Programm 1 wäre auch in Programm 1 integriert wäre). Da müsste man also Programm 2 aus den Ressourcen in 2.exe schreiben, eine Kopie von Programm 1 ohne Ressourcen erstellen und diese dann als Ressource zu Programm 2 hinzufügen. Wie man Ressourcen bearbeitet kann man den etwas gehobeneren Bindern oder teilweise auch Cryptern entnehmen, oder nach entsprechenden Tutorials suchen.

Da du uns hier aber allerdings Code, den ich für AutoIt halte, als EXE verkaufen möchtest gehe ich mal stark davon aus, dass ich mit diesem Text hier nur meine Zeit vergeudet habe, du ohnehin nur Bahnhof verstanden hast und nach wie vor keinen Schimmer hast wie man sowas umsetzen könnte.


Das Problem mit der Henne und dem Ei.
Aus evolutionsbiologischer Sicht wohl das Ei, da die Vorfahren der Henne, auch wenn man diese nicht als Hühner bezeichnen würde, sicher auch schon Eier gelegt haben.
Insofern... Einfache Frage. Einfache Antwort. Nächste bitte.

Surflam
21.04.2012, 13:02
Es gibt auch Autoit Compiler die Autoit Scripts in Exen umwandelt blackberry, auch wenns nicht umbedingt "sauber" ist das so zu machen, möglich ist es. Wobei ich Autoit für nicht grade die geeignetste Sprache für so ein Vorhaben halte.. Denke mit z.b C++ wäre er besser bedient.