Sto radi "strip executable"?
Dev-Cpp i "Strip executable"
Zaključano
Zakačeno
Poz suside ;) Evo ovaj kod
sa standardnim compile&link opcijama u DevC++ - na kraju se generira izvrsni file velicine approx. 19kb. S ukljucenim "strip executable", velicina izvrsne datoteke je ~ 5kb. Sad ti je valjda jasno sta radi. Generira manje fileove.
S tehnicke strane, a vjerujem da te to isto zanima, strip komanda (referirat cu kao komandu, jer to i jeste komanda na UNIX sistemima, koja se koristi zasebno od kompajlera / IDE-a) skida simbole iz izvrsnih fileova. Najcesci simboli su kompajlerski, debuggerski, realokacijski...uglavnom simboli sluze kao definicija dijela koda. Prilikom debagiranja, moras ostavit simbole pri ulazu u funkcije, inicijaliziranje varijabli...
Uglavnom, mozes ih i ne moras koristit. U production okruzenju se uvijek koriste, a prilikom releasanja programa se skidaju. Kobno moze bit kad komercijalni program ostavi debug simbole u svojim exec-ovima - tad je stvarno macji kasalj napravit crack ;)
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
Code:
#include<stdio.h>
#include<stdlib.h>
int main()
{
printf("Hello World!\n");
system("PAUSE"); return EXIT_SUCCESS;
}
#include<stdio.h>
#include<stdlib.h>
int main()
{
printf("Hello World!\n");
system("PAUSE"); return EXIT_SUCCESS;
}
sa standardnim compile&link opcijama u DevC++ - na kraju se generira izvrsni file velicine approx. 19kb. S ukljucenim "strip executable", velicina izvrsne datoteke je ~ 5kb. Sad ti je valjda jasno sta radi. Generira manje fileove.
S tehnicke strane, a vjerujem da te to isto zanima, strip komanda (referirat cu kao komandu, jer to i jeste komanda na UNIX sistemima, koja se koristi zasebno od kompajlera / IDE-a) skida simbole iz izvrsnih fileova. Najcesci simboli su kompajlerski, debuggerski, realokacijski...uglavnom simboli sluze kao definicija dijela koda. Prilikom debagiranja, moras ostavit simbole pri ulazu u funkcije, inicijaliziranje varijabli...
Uglavnom, mozes ih i ne moras koristit. U production okruzenju se uvijek koriste, a prilikom releasanja programa se skidaju. Kobno moze bit kad komercijalni program ostavi debug simbole u svojim exec-ovima - tad je stvarno macji kasalj napravit crack ;)
Potpis
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
Citat:
z@re:
Uglavnom, mozes ih i ne moras koristit. U production okruzenju se uvijek koriste, a prilikom releasanja programa se skidaju. Kobno moze bit kad komercijalni program ostavi debug simbole u svojim exec-ovima - tad je stvarno macji kasalj napravit crack ;)
Uglavnom, mozes ih i ne moras koristit. U production okruzenju se uvijek koriste, a prilikom releasanja programa se skidaju. Kobno moze bit kad komercijalni program ostavi debug simbole u svojim exec-ovima - tad je stvarno macji kasalj napravit crack ;)
To je tačno za tradicionalne aplikacije i biblioteke koje se šalju direktno korisnicima. Međutim, ako praviš server aplikaciju koja trči na tvom serveru a korisnici joj pristupaju posebnim klijentima (ili čak web browserima) često je bolje ostaviti debug simbole i u produkcijskoj verziji. Ako crkne server, samo pogledaš core fajl i lako rešiš problem.
Potpis
Istina, ja sam samo dao primjer...tesko da ce se u bilo kojoj mainstream komercijalnoj aplikaciji nac debug simboli. To o cemu ti pricas je ipak klijent-server aplikacija, a takve se cesto specijalizirano narucuju. Tako da nema govora da ce netko ic krekovat itd...
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
Potpis
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
I mislio sam da se radi o nekakvom guljenju simbola, ali bolje je pitati.
Hvala.
Pozdrav splico! :)
Hvala.
Pozdrav splico! :)
Ako se ne varam, niko zapravo coveku nije odgovorio sta radi komanda strip.
Posto odgovaram sa posla, i nemam puno vremena pokusacu da lakonski odgovorim na pitanje.
"strip" komanda obrise sve "debug" simbole iz izvrsnog fajla, i u njemu ostavi samo onaj masinski kod koji je potreban i dovoljan za uspesno izvrsenje aplikacije.
strip se uglavnom izvrsi na tzv. "release" verziji programa, dok traje razvoj nemojte izvrsavati strip, da bi mogli da koristite "debugger".
Posto odgovaram sa posla, i nemam puno vremena pokusacu da lakonski odgovorim na pitanje.
"strip" komanda obrise sve "debug" simbole iz izvrsnog fajla, i u njemu ostavi samo onaj masinski kod koji je potreban i dovoljan za uspesno izvrsenje aplikacije.
strip se uglavnom izvrsi na tzv. "release" verziji programa, dok traje razvoj nemojte izvrsavati strip, da bi mogli da koristite "debugger".
Potpis
Evo jos malo zanimljivosti oko 'malih' EXE fajlova:
http://www.catch22.net/tuts/minexe.asp
http://msdn.microsoft.com/msdnmag/issues/01/01/hood/default.aspx
http://www.catch22.net/tuts/minexe.asp
http://msdn.microsoft.com/msdnmag/issues/01/01/hood/default.aspx
Citat:
leka: Ako se ne varam, niko zapravo coveku nije odgovorio sta radi komanda strip.
Posto odgovaram sa posla, i nemam puno vremena pokusacu da lakonski odgovorim na pitanje.
"strip" komanda obrise sve "debug" simbole iz izvrsnog fajla, i u njemu ostavi samo onaj masinski kod koji je potreban i dovoljan za uspesno izvrsenje aplikacije.
strip se uglavnom izvrsi na tzv. "release" verziji programa, dok traje razvoj nemojte izvrsavati strip, da bi mogli da koristite "debugger".
Posto odgovaram sa posla, i nemam puno vremena pokusacu da lakonski odgovorim na pitanje.
"strip" komanda obrise sve "debug" simbole iz izvrsnog fajla, i u njemu ostavi samo onaj masinski kod koji je potreban i dovoljan za uspesno izvrsenje aplikacije.
strip se uglavnom izvrsi na tzv. "release" verziji programa, dok traje razvoj nemojte izvrsavati strip, da bi mogli da koristite "debugger".
Bez uvrede, ali shvatio sam to iznjihovih postova.
Svejedno hvala.
Citat:
leka: Ako se ne varam, niko zapravo coveku nije odgovorio sta radi komanda strip.
Citat:
z@re:
...
S tehnicke strane, a vjerujem da te to isto zanima, strip komanda (referirat cu kao komandu, jer to i jeste komanda na UNIX sistemima, koja se koristi zasebno od kompajlera / IDE-a) skida simbole iz izvrsnih fileova. Najcesci simboli su kompajlerski, debuggerski, realokacijski...uglavnom simboli sluze kao definicija dijela koda. Prilikom debagiranja, moras ostavit simbole pri ulazu u funkcije, inicijaliziranje varijabli...
Uglavnom, mozes ih i ne moras koristit. U production okruzenju se uvijek koriste, a prilikom releasanja programa se skidaju. Kobno moze bit kad komercijalni program ostavi debug simbole u svojim exec-ovima - tad je stvarno macji kasalj napravit crack ;)
...
S tehnicke strane, a vjerujem da te to isto zanima, strip komanda (referirat cu kao komandu, jer to i jeste komanda na UNIX sistemima, koja se koristi zasebno od kompajlera / IDE-a) skida simbole iz izvrsnih fileova. Najcesci simboli su kompajlerski, debuggerski, realokacijski...uglavnom simboli sluze kao definicija dijela koda. Prilikom debagiranja, moras ostavit simbole pri ulazu u funkcije, inicijaliziranje varijabli...
Uglavnom, mozes ih i ne moras koristit. U production okruzenju se uvijek koriste, a prilikom releasanja programa se skidaju. Kobno moze bit kad komercijalni program ostavi debug simbole u svojim exec-ovima - tad je stvarno macji kasalj napravit crack ;)
Leka, mora da te tlace na poslu, kad ne mozes procitat topic kako treba :D
Uglavnom, nije ni covjeku na odmet da dobije par istih odgovora napisanih malo drugacije, moze se stvorit bolja "slika".
Potpis
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
Izvinjavam z@retu, uopste nisam video njegov tekst... :(
Potpis
Uff covjece, odavna nisam vidio ispriku, previse vremena trosim na Advocacy ;)
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
Potpis
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
Citat:
z@re: Kobno moze bit kad komercijalni program ostavi debug simbole u svojim exec-ovima - tad je stvarno macji kasalj napravit crack ;)
AEGIS klijent, linux verzija, radi baš to (bar je radila prije 1.5 god kad sam taj program koristio). Disasm u IDA-i pokrenutoj preko wine-a, konvertiran jedan jnz u jz i vozi bato.
Još sam naletio na jedan komercijalni FTP server (ne sjećam se točnog imena) na windowsima koji je bio distribuiran sa uključenim debug simbolima. Pravi užitak za reversati :D
sta bi bilo ekvivalentno u borland builderu?
mozda Project->Options->Compiler->Release ??
bas sam razmisljao kako na najbolji nacin zastititi ( ha, prvi put sam obratio paznju i vidjeo kako je ovo smijesna rijec: zasTITITI :-)) komercijalnu aplikaciju....
mozda Project->Options->Compiler->Release ??
bas sam razmisljao kako na najbolji nacin zastititi ( ha, prvi put sam obratio paznju i vidjeo kako je ovo smijesna rijec: zasTITITI :-)) komercijalnu aplikaciju....
Potpis
there's something out there
waiting for us,
and it ain't no man...
waiting for us,
and it ain't no man...
Project -> Options -> Compiler
Imas taman dva botuna, jedan za debug i jedan za release verziju, koji ce automatski podesit sve one opcije za tebe.
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
Imas taman dva botuna, jedan za debug i jedan za release verziju, koji ce automatski podesit sve one opcije za tebe.
Potpis
Q: HSP56 Micromodem nece da radi kompjuter ga prepozna a kad treba da se konektujem nece ne daje ni znaka zivota. u cemu je problem.
A: Crko mozda od grmljavine mozda od spanaca. Uglavnom baci ga u WC solju jako povuci vodu. Skupi 5e i uzmi drugi i ne postuj temu na pogresno mesto.
Citat:
fucking voodoo: bas sam razmisljao kako na najbolji nacin zastititi ( ha, prvi put sam obratio paznju i vidjeo kako je ovo smijesna rijec: zasTITITI :-)) komercijalnu aplikaciju....
Hehe, ovo me podsjetilo na ovaj članak (čija je poanta da i čak i debug simboli mogu leakati informacije!):
Information leakage through PDB files
PDB fileove za cijeli Windows OS možete skinuti besplatno sa MS stranica.. :D