Visual C++ 如何將執行檔最小化

我用的是Visual C++ 2008(設定跟2005幾乎一樣),我去組態管理員,選擇成release的組態,但是出來的執行檔(exe)要怎麼用成檔案最小化呢?

我只作一個測試:

#include <stdio.h>

int main(void)

{

printf("Test");

return 0;

}

上面這麼短的程式碼,編譯出來的執行檔.exe竟然也需要7.00 KB(應該不可能這麼大吧?),我不知道要從哪裡調整成最小化執行檔?

希望調整的步驟能夠詳細一點!!

3 Answers

Rating
  • 1 decade ago
    Favorite Answer

    可以嘗試自訂入口點並把一些區段合併看看

    下面的代碼在VC6下的專案只可以編譯出480 Bytes的檔案

    #pragma comment(linker, "/OPT:REF")

    #pragma comment(linker, "/OPT:ICF")

    #pragma comment(linker, "/OPT:NOWIN98")

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

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

    #pragma comment(linker, "/MERGE:.rdata=.data")

    #pragma comment(linker, "/MERGE:.text=.data")

    #pragma comment(linker, "/MERGE:.reloc=.data")

    #pragma comment(linker,"/subsystem:windows")

    #pragma optimize("gsy", on)

    #pragma comment(linker,"/ENTRY:Main") //自訂入口點

    Source(s): 網路
    • Commenter avatarLogin to reply the answers
  • novus
    Lv 6
    1 decade ago

    問題不在編譯

    只有一個function call的程式

    不管用速度、大小最佳化,編譯器也只能生成同樣的code

    如果能在連結階段關閉一些不必要的附加資訊,程式大概還可以在小個1k

    再來的屬於VC Runtime的部分,基本上動不了

    • Commenter avatarLogin to reply the answers
  • 1 decade ago

    在project 的設定的 c++ 的最佳化 選 size

    不過恐怕小不了太多

    windows 的執行檔大小 7k 己經很小了

    • Commenter avatarLogin to reply the answers
Still have questions? Get your answers by asking now.