青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

這是網(wǎng)上看到的,放到這里記錄下,供以后參考

1. 普通Exe 文件

完全可以使用下面方法: 
A. link標記: /nodefaultlib 
代表: Ignore all default libraries

包括運行時庫, 都不用.

當然如果大家要用相關c運行時庫的api 怎么辦呢? 
可以使用相關對應的API, 比如strcmpi, 使用lstrcmpi, 詳細請參考下表:

Standard functionWin32 equivalent
mallocHeapAlloc
freeHeapFree
strcpylstrcpy
strcatlstrcat
strncpylstrncpy
strncatlstrncat
strlenlstrlen
strcmplstrcmp
strcmpilstrcmpi
memcpyCopyMemory
memsetFillMemory or ZeroMemory
memmoveMoveMemory
toupperCharUpper
tolowerCharLower
isalphaIsCharAlpha
isalnumIsCharAlphaNumeric
islowerIsCharLower
isupperIsCharUpper
sprintfwsprintf
vsprintfwvsprint

B. 設置連接節(jié)大小及其他
加入下面代碼到cpp文件就可以.

#ifndef _DEBUG   
 #pragma comment(linker, "/FILEALIGN:16")  
 #pragma comment(linker, "/ALIGN:16")   

 #pragma comment(linker, "/OPT:REF")
 #pragma comment(linker, "/OPT:ICF")
 #pragma comment(linker, "/OPT:NOWIN98")  // 使用老VC編繹器的512大小為一節(jié)

 // 合并段
 #pragma comment(linker, "/MERGE:.rdata=.data")
 #pragma comment(linker, "/MERGE:.text=.data")
 #pragma comment(linker, "/MERGE:.reloc=.data")

 // Favour small code
 #pragma comment(linker, "/ENTRY:WinMain")
#endif

如果是少量代碼的Exe 程序, 最終大小可以在1500 字節(jié)以內. 
我曾寫過一個程序使用了文件讀寫, 執(zhí)行進程, 字符運算, 等等一共50多行代碼, 最終大小為: 1488字節(jié).


C. 不幸的是可能還是要使用c運行庫
那可以使用這個 LIBCTINY.LIB文件, 以盡量減小. 當然這個lib 本身包括不多的運行庫api. 
LIBCTINY.LIB 文件以及源程序參考: 
http://msdn.microsoft.com/msdnmag/issues/01/01/hood/default.aspx

 

 

2. 普通Dll 大小問題


因為: __DllMainCRTStartup 或: _DllMainCRTStartup 要調用運行時庫
還好, LIBCTINY.LIB 里面已經(jīng)有相關實現(xiàn), 可以用LIBCTINY.LIB, 而不用調用運行庫了. 這樣可以大大減小.

連接設置:

#ifndef _DEBUG

 // default lib setting.
 #pragma comment(linker, "/defaultlib:kernel32.lib") 
 #pragma comment(linker, "/defaultlib:LIBCTINY.LIB")
 #pragma comment(linker, "/nodefaultlib:libc.lib")
 #pragma comment(linker, "/nodefaultlib:libcmt.lib")

 // section size
 #pragma comment(linker, "/FILEALIGN:16")
 #pragma comment(linker, "/ALIGN:16") 
 #pragma comment(linker, "/OPT:NOWIN98")

 // 合并段
 #pragma comment(linker, "/MERGE:.rdata=.data")
 #pragma comment(linker, "/MERGE:.text=.data")
 #pragma comment(linker, "/MERGE:.reloc=.data")

#endif

另外我的測試程序中導出了一個接口
BOOL _stdcall ExpHook( )
{
 return 0;
}

最終大小為: 992字節(jié).

 

 

3. 復雜Dll 和復雜Exe 大小問題

如果你的程序一定要使用MFC, 那怎么編繹至少也有幾十KB了.
但你還是可以用相關PE壓縮程序壓縮一下的. 至少能壓縮到50%.

如果是COM, 建議不要使用MFC, 如果使用ATL, 可以使用壓縮程序壓縮一下, 基本會在20-40K 大小.

復雜類型的Dll, Exe 肯定是要使用運行庫的. 像用了ATL就沒有辦法不用運行庫了.

posted on 2012-07-07 15:17 Richard Wei 閱讀(5546) 評論(1)  編輯 收藏 引用 所屬分類: windows desktop

FeedBack:
# re: 如何減小Exe, DLL 的大小
2012-07-07 15:23 | Richard Wei
感覺另外還有應該盡量少用全局和靜態(tài)變量,他們會被直接編譯到PE文件的數(shù)據(jù)(.data, .rdata)段中;另外圖片等資源也挺耗空間,簡單的圖片可以在運行時自己畫出來。  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美夜福利tv在线| 国产在线日韩| 国产欧美精品日韩| 韩日欧美一区| 亚洲午夜影视影院在线观看| 亚洲一区二区免费看| 久久av在线看| 亚洲精品日产精品乱码不卡| av成人国产| 久久国产精品99国产精| 欧美/亚洲一区| 国产精品天天看| 亚洲人成艺术| 久久久久久欧美| 一区二区三区 在线观看视| 久久成人免费| 国产精品青草久久久久福利99| 国产一区二区三区久久精品| 一区二区三区欧美在线| 久久综合久久久| 国产精品99久久久久久久女警 | 麻豆精品在线观看| 99国产一区二区三精品乱码| 久久经典综合| 国产日产欧美a一级在线| 中文久久精品| 亚洲国产精品久久久久久女王| 午夜国产精品影院在线观看 | 午夜精品久久久久| 欧美午夜精品久久久| 亚洲精品国产精品国自产观看浪潮 | 999亚洲国产精| 欧美精品系列| 一区二区三区国产在线观看| 亚洲国产欧美一区二区三区久久| 麻豆成人av| 亚洲美女毛片| 99精品热视频只有精品10| 欧美日本在线播放| 一区二区三区精品视频| 亚洲乱码一区二区| 欧美日韩视频在线观看一区二区三区 | 欧美视频中文在线看| 影音先锋久久资源网| 亚洲一区二区三区在线观看视频 | 亚洲精品在线观| 亚洲国内自拍| 欧美激情成人在线视频| 亚洲欧洲精品一区二区精品久久久| 亚洲一区二区免费| 国产精品一区二区欧美| 一区二区三区精品国产| 欧美成人免费全部| 一区三区视频| 亚洲人午夜精品| 欧美日本三区| 久久久亚洲精品一区二区三区| 欧美一区久久| 一区二区三区免费网站| 宅男噜噜噜66国产日韩在线观看| 国产欧美精品xxxx另类| 久久丁香综合五月国产三级网站| 欧美中文字幕精品| 亚洲精品免费在线| 亚洲免费一级电影| 91久久线看在观草草青青| 在线一区二区日韩| 亚洲高清色综合| 亚洲永久精品国产| 日韩午夜在线视频| 欧美一区二区视频在线| 99精品视频一区| 久久精品国产第一区二区三区| 伊人婷婷欧美激情| 亚洲尤物视频网| 亚洲男人的天堂在线aⅴ视频| 麻豆乱码国产一区二区三区| 欧美一区二区视频在线| 欧美视频三区在线播放| 欧美成年人网| 一区二区视频欧美| 久久国产成人| 蜜桃av噜噜一区| 国产午夜精品麻豆| 欧美一区=区| 午夜日韩在线观看| 国产精品视区| 亚洲在线免费观看| 久久精品国产精品| 国产情人节一区| 亚洲国产精品热久久| 欧美高清视频在线 | 久久精品亚洲一区二区| 久久精品最新地址| 亚洲大胆人体视频| 欧美极品aⅴ影院| 久久精品国产91精品亚洲| 久久久久久久一区二区| 一本久道久久综合婷婷鲸鱼| 国产精品日韩高清| 欧美www视频| 欧美一区二区视频在线| 亚洲国产精品v| 欧美一级久久| 日韩一级精品视频在线观看| 好吊成人免视频| 国产精品视频福利| 欧美日韩高清在线播放| 欧美成人自拍| 久久久一二三| 久久久久久成人| 久久久91精品国产一区二区精品| 欧美大片在线影院| 久久综合给合久久狠狠狠97色69| 亚洲欧美一区二区视频| 亚洲精品国产精品乱码不99按摩| 伊人激情综合| 精品51国产黑色丝袜高跟鞋| 国产欧美日韩视频一区二区| 欧美日韩国产综合网| 欧美freesex交免费视频| 久久国产一二区| 久久久久国产精品人| 久久精品在线观看| 久久成人免费| 老司机亚洲精品| 欧美激情一区二区三区在线视频| 午夜久久久久久| 欧美在线1区| 亚洲欧美久久久| 午夜视频久久久久久| 欧美在线|欧美| 蜜臀a∨国产成人精品| 免费久久99精品国产自| 久久中文久久字幕| 欧美国产精品v| 国产精品电影观看| 国产日产欧产精品推荐色 | 久久久久久电影| 美女精品一区| 一区二区三区国产在线| 亚洲免费一级电影| 欧美人在线观看| 亚洲国产日韩欧美综合久久| 日韩视频在线播放| 媚黑女一区二区| 久久九九国产| 国产精品三区www17con| 国产日韩一区二区| 日韩特黄影片| 免费国产一区二区| 亚洲欧美日韩国产成人| 欧美激情偷拍| 国产欧美精品国产国产专区| 亚洲精选在线观看| 久久久青草青青国产亚洲免观| 亚洲精选一区| 欧美99在线视频观看| 亚洲国产精选| 久久精品女人天堂| 亚洲一区在线播放| 国产精品视频一区二区高潮| 亚洲欧美日韩成人| 亚洲激情视频在线观看| 久久成人免费网| 国内精品免费在线观看| 欧美一区二区三区视频| 99精品免费| 国产精品久久久久久久久久免费 | 久久动漫亚洲| 亚洲自拍16p| 国产欧美日韩精品丝袜高跟鞋| 欧美一区二区三区四区视频| 日韩午夜免费视频| 欧美视频二区| 老牛嫩草一区二区三区日本| 久久国产精品久久w女人spa| 欧美性开放视频| 久久精品二区三区| 六月丁香综合| 一本久久综合亚洲鲁鲁| 99综合电影在线视频| 国产精品羞羞答答| 久久久久久久91| 欧美成人精品h版在线观看| 亚洲精品一区在线观看香蕉| 亚洲最新色图| 亚洲欧洲日本国产| 中文在线资源观看网站视频免费不卡 | 国内成人精品视频| 亚洲人成网在线播放| 国产欧美视频一区二区三区| 欧美成熟视频| 国内精品免费在线观看| 亚洲一二三区在线观看| 一本久久精品一区二区| 久久久亚洲影院你懂的| 欧美亚洲综合另类| 国产精品久久久久久久午夜| 一本大道久久a久久精二百|