Avatar billede brhino Nybegynder
18. december 2003 - 17:42 Der er 6 kommentarer

kortere exe filer i C++

Hej

Jeg har læst et sted at man i VC++ kan gøre exe filer kortere ved at skrive flg. kommandolinie:

#pragma comment (linker, "/ENTRY:main /FILEALIGN:0x200 MERGE:.data=.text /MERGE:.rdata=.text /SECTION:.text,EWR /IGNORE:4078")

main peger til "int main(){...}"

Grunden til at exe filen skulle blive mindre er at man "smelter" sektioner sammen, at man laver filealignment om til 0x200 istedet for 0x1000, og at man ved at skrive ENTRY fjerner alt "junk" koden som compileren normalt laver i starten af exe filen !?!?

Da jeg er en fattig studerende og ikke har VC++, men Dev-C++, så er mit spørgsmål flg.: kan noget lignende gøres med Dev-C++ og hvis ja hvordan ?? Jeg har prøvet kommandolinien. Det ser ud til at virke, undtagen MERGE. Kan nogen derude hjælpe ??

På for hånd tak !!
Avatar billede arne_v Ekspert
18. december 2003 - 17:47 #1
Den #pragma har næppe nogen effekt i gcc / dev-cpp.

Det tilsvarende må være at builde med -s og det gør dev-cpp vist
default !
Avatar billede arne_v Ekspert
18. december 2003 - 17:48 #2
Du kan evt. prøve at check ved at køre strip på exe filen og se
om den krymper !
Avatar billede brhino Nybegynder
18. december 2003 - 17:52 #3
Øh .. strip ??? Hvis du mener et pakke program (ala zip) så krymper den... Endda temmelig meget !!
Avatar billede arne_v Ekspert
18. december 2003 - 18:13 #4
Jeg mener det strip program der kommer med dev-cpp !

(kig i bin dir)
Avatar billede tosssen Nybegynder
18. december 2003 - 18:19 #5
Hvad med sådan noget som calling conventions? Jeg ved intet om hvordan det foregår i gcc, men i visual c++ kan man forkorte exefiler ved fx at bruge _stdcall i stedet for _cdecl
Avatar billede bleze Nybegynder
19. december 2003 - 00:30 #6
søg på google efter programmet UPX... Det er gratis...  13 mb exe fil til 3 mb uden at skulle pakkes ud først når du kører
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





White paper
Tidsbegrænset kampagne: Overvejer du at udskifte eller tilføje printere i din forretning? Vi kan tilbyde én eller flere maskiner gratis