No MFC 程式設計01 - 最精簡的 win32 程式 (轉)

worldblog發表於2007-12-12
No MFC 程式設計01 - 最精簡的 win32 程式 (轉)[@more@]


這裡介紹不用 mfc 的

  下面要用 做一個最精簡的 Win32 ,請不要見笑,可以用來做嘛!

  第一階段:
  精簡的程式碼不多,見下面源程式


// fileName: WinMain.cpp

 //指定下一句為加快編譯速度
 #define WIN32_LEAN_AND_MEAN  // Say No to MFC !!
  #include <.h> 


int WIN WinMain ( HINSTANCE hInstance,
  HINSTANCE hPrevInstance,
  LPSTR lpCmdLine, int nCmdShow ) // 引數是固定格式,沒辦法省略
{


 // 如果想證明程式做過什麼,去掉下面的 雙斜槓,(太基本) 不多說了。
 // MessageBox( NULL, " Hello world ", "Simple_Code  by Temp77", MB_OK );


  ExitProcess(0);
  return NULL;  // 為了完整而保留,不要也沒錯
  }

 


  用嚮導開一個空的 Win32 工程,加到裡面去就是了,編譯一下, 0 error(s), 0 warning(s)。

  第一階段完

  第二階段:

  ( 以下講的內容我從網上一篇文章找來,對我很有用。)

  既然是最精簡的程式,現在還有什麼不夠呢?哦,對了,是體積太大了,你可以想象幾乎什麼都不做的程式有 28K 嗎?

  於是準備對程式的工程動手術吧。

  先去掉 de 屬性,方法在選單欄的 ( Build -> Configurations... 裡面 ) 將 ( Win32 Debug ) Remove 掉。

  再重設 Link 設定,方法在選單欄的 ( Project -> Settings... 裡面 ) ,選中 Link 選項卡。
  在 " Ignore all default libraries " 前的選項裡打勾,又把 " /library modules: " 下編輯框裡的一大串全部刪掉,重新填上 " kernel32.lib user32.lib msvcrt.lib " ( 手術進行中... )

  最後,看到 " Project Options: " 下的編輯框沒有,是不是有長長的一大串呢?不過,請不要刪除它,只在最後追加一個空格,然後填上 " /ALIGN:4096 " 就可以宣告最小的節大小了。( 手術完成 )

  編譯它看看,( Oh,多了一個 warning ,不管了 ) 實際生成的可檔案有多大呢?對,你沒有看錯,是 3K !

  好了,第二階段結束。

  本文對一些人有用,另一些則沒用!  2002年9月27日 pm 5:42   

----------------------------------------------

自我簡介:

特  徵:未到而立,剛到米七,語音略帶磁性,性格開朗,有點頑皮,有點小聰明,準完美主義者 …
最 大 嗜 好 : 玩電子遊戲 ( 夢想開發 Oni 連線版, 未玩過 Oni ? ohhh ! )
近來常掛嘴邊: 變是相對的,不變也 …
愛用的: VC + DX_SDK + api ( 戲稱VC++ )
目前喜歡的歌: 周杰倫 - 星晴

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-992096/,如需轉載,請註明出處,否則將追究法律責任。

相關文章