[c++] exe sich selbst kopieren lassen

hi,

wie kann ich meine exe sich selbst kopieren lassen wenn man winmain benutzt?

mfg darksnake
 
WinAPI
einfach:
CopyFile http://msdn2.microsoft.com/en-us/library/aa363851.aspx

etwas umständlicher:
SHFileOperation
http://msdn.microsoft.com/library/e...ence/functions/shfileoperation.asp?frame=true
Bsp:
http://www.codeproject.com/shell/SHFileOperation_Demo.asp

und "klassisch":
CreateFile
(optional) VirtualAlloc
ReadFile
WriteFile
Es gibt noch einige Methoden mehr (von hinten durch die Brust ins Auge ;) ). Aber schon die erste sollte mit Win >98 funktionieren (bei Win 9.x gab es, soweit ich mich noch erinnere, Probleme mit dem (Lese)Zugriff auf die laufende Anwendung, so dass eigentlich keine der "sauberen" Methden funktionieren dürfte).
 
Es gibt noch einige Methoden mehr (von hinten durch die Brust ins Auge Augenzwinkern )

ich würd das ja als aufgebohrten quine implementieren :D
/edit: also natürlich, wenn keine konkrete funktionalität voraussetzung ist. oder gibts quines mit ner payload ? :)
 
hm versuchs mal hiermit
Code:
char Pfad[MAX_PATH+2];
 GetModuleFileName(NULL,Pfad,MAX_PATH);
//kopiert die exe in die angegebennen pfad und bennent sie um CopyFile(Pfad,"C:\\name.exe",false);

also des is mal nur ein bsp in dem fall würd sich deine exe in C:\ kopieren und in name.exe umbenennen
 
Zurück
Oben