Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Zapisivanje podataka na kraj exe fajla

[es] :: Pascal / Delphi / Kylix :: Zapisivanje podataka na kraj exe fajla

[ Pregleda: 4554 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

reiser

Član broj: 7895
Poruke: 2314



+102 Profil

icon Zapisivanje podataka na kraj exe fajla11.12.2003. u 19:03 - pre 247 meseci
Moze li da se napravi program koji ce neki string podatak, recimo '000' da zapise na kraj svog izvrsnog fajla ?
Da li je to moguce, da program zapise u svom fajlu podatak ?
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.128.EUnet.yu



+1 Profil

icon Re: Zapisivanje podataka na kraj exe fajla11.12.2003. u 22:15 - pre 247 meseci
Moze. Resenje se oslanja na to sto windows exe loader cita zaglavlje fajla i na osnovu njega ucitava i ostatak exe-a (grubo objasnjeno). Sve ono sto je stavljeno u fajl posle njegovog postojeceg sadrzaja ne smeta Windows-u. Da pojasnim

Code:

+---------------------------+
|Zaglavlje EXE-a sa podacima|
+---------------------------+
|                           |
|      "zvanicno"           |
|     Telo EXE fajla        |
|                           |
|                           |
+---------------------------+
|                           |
|     Bilo sta sto je       |
|        dodato             |
+---------------------------+


 
Odgovor na temu

Crazy Mix
Nemanja Avramovic
QuadraSoft
Mladenovac

Član broj: 7103
Poruke: 331
*.telekom.yu

ICQ: 266136396
Sajt: www.quadrasoft.co.sr


Profil

icon Re: Zapisivanje podataka na kraj exe fajla12.12.2003. u 09:43 - pre 247 meseci
Da bi dodao neki string u EXE fajl uradi ovako:
1. Snimi string u npr. string.txt pored tvog EXE fajla...
2. Napravi MS DOS batch (.BAT) fajl koji ce u sebi imati ovako nesto:
Code:

copy tvoj_exe.exe + string.txt krajnji_exe.exe

Posle toga mozes slobodno obrisati tvoj_exe.exe i string.txt
Ako pokrenes krajnji_exe.exe sve ce lepo raditi.

Ako imas Windows/Total Commander... Otvori krajnji_exe.exe i spusti se na kraj fajla: videces string iz string.txt tamo.


E, sad... za citanje ja sam koristio neku komponentu za citanje ID3 Taga, ali sad nemam ni tu komponentu, ni kod mog progama... Pitaj nekog jel ima komponentu sa citanjem ID3 taga iz mp3 fajlova SA SOURCE-om, pa cemo nesto uraditi.

P.S. Za brisanje tog stringa iz EXE fajla: ne znam kako se to radi... mozda da sacuvas tvoj_exe.exe kao tvoj_exe.exe.bak pa ga posle vrati... ne znam stvarno!
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.234.EUnet.yu



+1 Profil

icon Re: Zapisivanje podataka na kraj exe fajla12.12.2003. u 10:48 - pre 247 meseci
To nije dobro resenje. Kako izdvojiti string sa kraja EXE-a ili bilo koji sadrzaj ako se ne zna koliko je nakaceno na kraj. Laksi metod:

1) Na kraj EXE-a se doda sadrzaj i na kraju tog sadrzaja jedan integer u koji je zapisana originalna duzina fajla.

2) Ako program sam sebe treba da procita radi se sledece: exe se otvori sa readonly atributom, skoci se na kraj-SizeOf(integer) fajla i procita se onaj integer. Zatim se skoci na poziciju na koju pokazuje integer (plus 1). Odatle pa do kraja-SizeOf(integer) nalazi se dodati sadrzaj.
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.ppp-bg.sezampro.yu



+1 Profil

icon Re: Zapisivanje podataka na kraj exe fajla12.12.2003. u 11:27 - pre 247 meseci
Naravno sam EXE dok je startovan ne moze otvoriti sopstveni fajl za upis. Resenja su razna od toga da exe prvo napravi kopiju svog fajla, zatim upise sta treba i onda izvrsi zamenu kada nije startovan uz pomoc drugog pomocnog programa ili windows mehanizma za kopiranje fajlova posle restarta (ovde sam bas grubo nazvao i opisao doticni mehanizam)
 
Odgovor na temu

byTer

Član broj: 10936
Poruke: 1221
*.info-net.co.yu

ICQ: 47761626


Profil

icon Re: Zapisivanje podataka na kraj exe fajla12.12.2003. u 14:33 - pre 247 meseci
Pogledaj cod nekih virusa koji su tog tipa. Mogu ti dati dobre savete. Mislim da komponente za to ne postoje, a i da postoje potrebno je mnogo kodiranja i to verovatno u asm.
 
Odgovor na temu

rambo
Dejan Petković
Beograd

Član broj: 6095
Poruke: 190
*.47.EUnet.yu



+6 Profil

icon Re: Zapisivanje podataka na kraj exe fajla13.12.2003. u 01:16 - pre 247 meseci
Citat:
byTer:
Pogledaj cod nekih virusa koji su tog tipa. Mogu ti dati dobre savete. Mislim da komponente za to ne postoje, a i da postoje potrebno je mnogo kodiranja i to verovatno u asm.


Prvo da demantujem poslednju tvrdnju...

Postoji ExeMod.pas, unit koji je napravio neki lik (imam ja isti) i koji ima
gomilu funkcija i procedura koje mogu da upišu i isčitaju sve i svašta iz
EXE-a. Potrežite i naćićete...

Ovo sa virusima, i ja mislim da mora da se koristi neki low-level pristup
ali se svakako i to može rešiti. Pokušajte sa crackerima iz susedne grupe...


Pozdrav,
Rambo



"There is a theory which states that if ever anybody discovers exactly what the
Universe is for and why it is here, it will instantly disappear and be replaced by
something even more bizarre and inexplicable. There is another theory which states
that this has already happened."
-- Douglas Adams
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.vdial.verat.net



+1 Profil

icon Re: Zapisivanje podataka na kraj exe fajla13.12.2003. u 09:49 - pre 247 meseci
Kod virusa su druge stvari u pitanju. U nasem slucaju zapisujemo obicne podatke na kraj fajla, dok se kod virusa radi sledece: virus se doda na kraj izmeni zaglavlje EXE-a tako da se ucita prvo virus (loader na osnovu zaglavlja ucitava deo exe-a gde je virus) a onda on (virus) ucita originalni EXE kada zavrsi svoje poslove. Na osnovu ovoga mozete da pretpostavite kako AV softver prepoznaje potencijalne viruse koje nema u svojoj bazi.
 
Odgovor na temu

byTer

Član broj: 10936
Poruke: 1221
*.info-net.co.yu

ICQ: 47761626


Profil

icon Re: Zapisivanje podataka na kraj exe fajla13.12.2003. u 14:24 - pre 247 meseci
E pa cool. Eto resenja. Pisao sam cisto iz glave, nisam proveravao da li postoji ili ne.
 
Odgovor na temu

reiser

Član broj: 7895
Poruke: 2314



+102 Profil

icon Re: Zapisivanje podataka na kraj exe fajla13.12.2003. u 16:44 - pre 247 meseci
Sta meni konkretno treba : pisem jedan program u Delphi. On sad treba da doda string duzine 3 (ni manje, ni vise) karaktera na kraj svog exe fajla, ali po mogucstvu da ne prekine izvrsavanje. Znam da sam video negde kod koji zapisuje string na kraj SVOG exe fajla, pisan u Pascalu.

Evo kako otprilike izgleda deo koda :

Code:

begin
...
  begin
    If FileExists(...) Then
       SetFileEndData(StrToInt(GetFileEndData) + 1);
    ....
    ....
   end;
.....
end;


@Morlic : Kako radi taj windows mehanizam za kopiranje fajlova ?
 
Odgovor na temu

morlic
Milos Orlic
Beograd

Član broj: 6081
Poruke: 735
*.135.EUnet.yu



+1 Profil

icon Re: Zapisivanje podataka na kraj exe fajla13.12.2003. u 17:00 - pre 247 meseci
Kao sto sam rekao, nema izmene EXe-a dok se izvrsava, tako da se eventualno kod koji nadjes koristi trikovima. Te trikove mozes da nadjes u MSDN-u.

Funkcija koja izmedju ostalog sluzi i za kopiranje fajla posle reboot-a (jer fajl vec psotoji u tom trenutku) je

SetupInstallFile

pogledaj u MSDN-u
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Zapisivanje podataka na kraj exe fajla

[ Pregleda: 4554 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.