VS2013 MFC應用程式工程中檔案的組成

2021-07-11 15:23:59 字數 2198 閱讀 5072



前言:debug檔案  release檔案

debug版本的可執行檔案中包含了用於除錯的資訊和**,而release版本則沒有除錯資訊,不能進行除錯,但可執行檔案比較小

1.解決方案相關檔案

解決方案相關檔案包括解決方案資料夾下的.sdf檔案、.sln檔案、.suo檔案和ipch資料夾。

.sdf檔案和ipch目錄一般占用空間比較大,幾十兆甚至上百兆,與智慧型提示、錯誤提示、**恢復和團隊本地倉庫等相關。

.sln檔案和.suo檔案為mfc自動生成的解決方案檔案,它包含當前解決方案中的工程資訊,儲存解決方案的設定。

2.工程相關檔案

工程相關檔案包括工程資料夾下的.vcxproj檔案和.vcxproj.filters檔案。

.vcxproj檔案是mfc生成的工程檔案,它包含當前工程的設定和工程所包含的檔案等資訊。.vcxproj.filters檔案存放工程的虛擬目錄資訊,也就是在解決方案瀏覽器中的目錄結構資訊。

注意:刪除vcxproj.filters,則工程虛擬目錄會沒有分類,所有檔案都放在乙個解決方案下面

.vcxproj,包含有工程所需要包含的檔案資訊,如「資源檔案」,「標頭檔案」,「原始檔」等

3.應用程式標頭檔案和原始檔

標頭檔案.h 原始檔.cpp,   是工程的程式檔案

應用程式嚮導會根據應用程式的型別(單文件、多文件或基於對話方塊的程式)自動生成一些標頭檔案和原始檔,這些檔案是工程的主體部分,用於實現主框架、文件、檢視等。

mainfrm.h和mainfrm.cpp:通過這兩個檔案從cframewndex類派生出cmainframe類,用於建立主框架、選單欄、工具欄和狀態列等。

helloworlddoc.h和helloworlddoc.cpp:這兩個檔案從cdocument類派生出文件類chelloworlddoc,包含一些用來初始化文件、序列化(儲存和裝入)文件和除錯的成員函式。

helloworldview.h和helloworldview.cpp:它們從cview類派生出名為chelloworldview的檢視類,用來顯示和列印文件資料,包含了一些繪圖和用於除錯的成員函式。

classview.h和classview.cpp:由cdockablepane類派生出cclassview類,用於實現應用程式介面左側面板上的class view。

fileview.h和fileview.cpp:由cdockablepane類派生出cfileview類,用於實現應用程式介面左側面板上的file view。

outputwnd.h和outputwnd.cpp:由cdockablepane類派生出coutputwnd類,用於實現應用程式介面下側面板output。

propertieswnd.h和propertieswnd.cpp:由cdockablepane類派生出cpropertieswnd類,用於實現應用程式介面右側面板properties。

viewtree.h和viewtree.cpp:由ctreectrl類派生出cviewtree類,用於實現出現在classview和fileview等中的樹檢視。)

4.資源檔案

一般我們使用mfc生成視窗程式都會有對話方塊、圖示、選單等資源,應用程式嚮導會生成資源相關檔案:res目錄、.rc檔案和resource.h檔案。

res目錄:工程資料夾下的res目錄中含有應用程式預設圖示、工具欄使用圖示等圖示檔案。

.rc:包含預設選單定義、字串表和加速鍵表,指定了預設的about對話方塊和應用程式預設圖示檔案等。

5.預編譯標頭檔案

幾乎所有的mfc程式的檔案都要包含afxwin.h等檔案,如果每次都編譯一次則會大大減慢編譯速度。所以把常用的mfc標頭檔案都放到了stdafx.h檔案中,然後由stdafx.cpp包含stdafx.h檔案,編譯器對stdafx.cpp只編譯一次,並生成編譯之後的預編譯頭.pch,大大提高了編譯效率。

注意:關閉預編譯頭文。專案-屬性-配置屬性-c/c++-預編譯頭-不使用預編譯頭

6.編譯鏈結生成檔案

工程資料夾下的debug或release子資料夾中包含了編譯鏈結時產生的中間檔案,解決方案資料夾下的debug或release子資料夾中主要包含有應用程式的可執行檔案。

VS2013 MFC 訊息對映

0.訊息是mfc程式進行通訊的基礎,在mfc應用程式中傳輸的訊息有三種型別 視窗訊息 命令訊息和控制項通知。1 視窗訊息 wm 視窗訊息 window message 一般與視窗的內部運作有關,如 建立視窗 繪製視窗和銷毀視窗等。通常,訊息是從系統傳送到視窗,或從視窗傳送到視窗。2 命令訊息 wm ...

VS2013 MFC程式設計問題

1.在 開啟資源檢視的時候,提示說 資源被 另乙個編輯器開啟 解決方案選單 視窗 選擇 關閉所有文件 再次 開啟2.socket程式設計時,環境建立要在最前面,如in addr 的前面,否則re wsadata w wsastartup 0x2,w 3.link fatal error lnk116...

VS2013 MFC單文件新增選單

新建mfc單文件程式,命名為hellomfc 在資源檢視中開啟menu,雙擊開啟id為idr mainframe的選項在最後的空白框中雙擊新增字元test 回車接著新增 hello並將id改為id say hello 接著為這個選單新增熱鍵 選擇資源檢視,右鍵新增,資源,accelerator,id...