Kako da program kopira sam sebe?

toxi

Zainteresovan član
Poruka
379
Dakle imam jedan program i on kad se pokrene treba da se kopira na npr C disk. Kako to da uradim posto ovako nece:

void main()
{
FILE *prog, *odr;
int i;

prog = fopen("toda.exe", "r");
odr = fopen("c:\\ERR.exe", "w");

while( (i=fgetc(prog)) != EOF)
fputc(i, odr);

fclose(odr);
fclose(prog);
}

Jel moguce ovo uraditi ili moram da pravim dva programa,Pa da jedan kopira drugi?

U C-u ili C++u....
 
Ma sve se kompajlira i sve to.
Problem je sto kada pokrenem taj napravljeni .exe fajl ( "toda.exe" ) on treba sam sebe da kopira na neku lokaciju npr. na C:\\WINDOWS , ali nece da kopira sam sebe valjda zato sto se taj fajl vec koristi. Sve ce raditi lepo ako se kopira neki drugi fajl ali meni treba da program kopira sam sebe. Ja u destinacionom fajlu dobijem nesto velicine 5Kb i to naravno ne radi.
Nadam se da sam lepo objasnio?
 
Toxi, toxi... Rešio si da napraviš neko virušče, a? :) Odgovara definiciji ;)
Ne verujem da postoji jednostavno rešenje, jer očito (kao što si i sam primetio) program biva lockovan, jer se izvršava... Možda definisati nekakve dve niti, od kojih jedna izvršava, a druga kopira? (Samo ideja, za realizaciju treba malo progooglati...) Ako je toxi_prograrmer==toxi, onda pokušaj na "security coding" ES-a...
 
Prvo, resio sam problem! Jednostavno je ali moram da ukljucim i stdlib.h :(
system("copy toda.exe c:\\ERR.exe");
I radi sad ok, mada ispise poruku "1 file copied." al na srecu znam da "obrisem" to preko WinAPI-a.

@Pjer_Nis
Meni uopste nije jasno kakve komande "prihvata" bach fajl. Imal li kakav link gde mogu da naucim "štogod" o osnovnim komandama?

@maksvel
He he, u pravu si jeste virus! :D
Kad se digne sistem, pokrece 15 veselih prozorcica da bi se "zarazeni" sigrao. Takodje i jedan dodatni program koji biva sakriven tako da ga task manager "ne vidi" i on "bipće" kad se god pritisne neki taster. :)

Jeste ja sam taj "toxi_programer" na ES-u. Da znas da cu da menjam nick i da izbacim to "programer" jer ispade ko da ja znam nesto o programiranju... To "toxi_programer" je u stvari "zelim da budem" :)
 
E ne verujem! 'de mi je mozak bio kad se ne setih zasto ono ne radi... Juce pisem jedan program i naidjem na isti problem i resim ga bez problema na najjednostavniji nacin. Cudi me i sto se niko od vas nije setio...
U svakom slucaju fajlove treba otvoriti za BINARNO citanje odnosno upisivanje. Znaci umesto "r" ide "rb" da bi se otvorio u binarnom modu za citanje i umesto "w" treba "wb".
Ccc... :)
 

Back
Top