MFC視窗程式基礎

2021-10-24 18:05:35 字數 2248 閱讀 6369

完成乙個簡單的mfc程式,並分析**中物件類的關係以及程式執行流程

用cl.exe,linker.exe等編譯簡單的windows api程式和mfc程式

總結程式的執行流程主要是先進行一些初始化過程,再註冊並建立視窗,接下來顯示視窗再更新視窗,最後進入訊息迴圈,視窗過程函式來處理所有的訊息。

首先要新增環境變數,這也是我認為最重要的一步,翻來覆去弄了好久,最後終於可以了

在環境變數path中新增cl.exe所在路徑

然後可以在命令列輸入cl,看自己有沒有正確,正確如下

然後在環境變數裡新建lib,加入如下變數

新建include,新增如下路徑

接下來在.cpp檔案的路徑框直接輸入cmd進入命令列

先進行編譯操作

顯示編譯成功,這個時候在當前目錄下就會生成乙個obj檔案

接下來進行連線操作

開啟vs,進行如下操作,

複製紅色箭頭的內容

使用link命令將之前生成的obj檔案與這些檔案連線起來,一定注意把複製過來的分號去掉,後面部分內容也不需要。

顯示連線成功後當前目錄會出現.exe檔案

這時我想執行.exe檔案還是執行不了,經過解決,發現還需要進行如下操作,搜尋rc.exe所在路徑,然後將其加入到path環境變數中

再在命令列中輸入rc.exe windowsproject3.rc得到字尾.res的檔案.

再將其和剛剛的檔案連線起來,這時便可以直接執行.exe檔案了

但這時會出現這個錯誤,還需要把這段**加入mfc程式中

extern int afxapi afxwinmain(hinstance hinstance, hinstance hprevinstance,

in lptstr lpcmdline, int ncmdshow);

extern 「c」 int winapi

_twinmain(hinstance hinstance, hinstance hprevinstance,

in lptstr lpcmdline, int ncmdshow)

#pragma warning(suppress: 4985)

int afxapi afxwinmain(hinstance hinstance, hinstance hprevinstance,

in lptstr lpcmdline, int ncmdshow)

nreturncode = pthread->exitinstance();

goto initfailure;

}nreturncode = pthread->run();

afxwinterm();

return nreturncode;

}

然後再在命令列中連線(需要重新編譯.cpp檔案生成.obj檔案)

顯示成功後能直接執行.exe檔案

通過本次實驗,我學習了mfc基礎,能夠運用mfc框架,並且對框架的**有了較為清楚的認識,了解了程式的執行流程;還掌握了用cl.exe和link.exe的方法,在此過程遇到了無數次問題,但是經過查閱資料,詢問同學老師得到了解決,儘管做起來並不順利,但是當撥開雲霧見光明的時候,也有滿滿的成就感。

MFC程式視窗標題設定

mfc程式的預設的標題是 無標題 title 其中title是應用程式的名稱,我們應如何修改mfc視窗標題來符合自己的要求?mfc程式的文件類中定義了乙個虛函式settitle,用於設定視窗標題的前半部分,如果只是要修改 無標題 部分,可以過載文件類的該函式。視窗標題的後半部分可以通過setwind...

MFC學習之視窗基礎

winmain函式 1 控制代碼 handle 1.定義 資源的標識 2.控制代碼的作用 作業系統通過控制代碼來找到對應的資源,從而對這些資源進行管理和操作。3控制代碼的分類 按資源 1.圖示控制代碼 hicon 2.游標控制代碼 hcursor 3.視窗控制代碼 hwnd 4.應用程式實列控制代碼...

MFC程式開發 視窗的誕生

從今天開始看 mfc程式開發參考大全 這本書啦,所以會寫一下上面的好玩的 先是第一章,這次的 就是體現了 在mfc之前,開發人員是怎樣寫windows應用程式的。先上 好了 include windows.h include 視窗函式 系統通過視窗函式處理系統中的各種訊息 視窗函式原型為 typed...