日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MFC窗口程序

發布時間:2023/12/31 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MFC窗口程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

創建一個簡單的MFC窗口程序并代碼分析

  • 一.創建一個簡單的MFC窗口程序
    • 1.安裝MFC
    • 2.創建MFC窗口程序
    • 3.進入MFC窗口設計
    • 4.窗口創建結果
    • 5.窗口程序分析及運行流程
  • 二.命令行工具cl.exe,linker.exe編譯連接程序
    • 1.配置環境變量
    • 2、cl.exe,linker.exe編譯鏈接Windows API程序
    • 3、cl.exe,linker.exe編譯鏈接MFC程序
  • 總結

一.創建一個簡單的MFC窗口程序

1.安裝MFC

首先在自己的vs2017/2019中下載MFC,安裝完成后才能創建MFC應用程序。
將下圖中的MFC勾選上并安裝。

2.創建MFC窗口程序

新建一個MFC應用。

這里我們將應用程序類型改為基于對話框即可。

3.進入MFC窗口設計

找到資源文件下的rc文件雙擊進入資源視圖,點擊資源視圖中的Dialog文件夾選擇IDD對話框文件雙擊打開,就進入可窗口設計。

右鍵點擊窗口就可以對窗口添加變量及其他操作。

4.窗口創建結果

5.窗口程序分析及運行流程

在MFC程序有且僅有一個從應用程序類(CWinApp)派生的類,而且有且僅有一個該派生類的實例化對象。
運行流程:
theApp全局對象定義—>TestApp構造函數—>WinMain函數

CMFCApplication1App::CMFCApplication1App() {// 支持重新啟動管理器m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_RESTART;// TODO: 在此處添加構造代碼,// 將所有重要的初始化放置在 InitInstance 中 }

創建對象是調用對象的構造函數

CWinApp::InitInstance();

進入WinMain函數,完成窗口類的注冊,創建,消息循環一類的

AfxEnableControlContainer();

二.命令行工具cl.exe,linker.exe編譯連接程序

1.配置環境變量





找到自己電腦上的cl.exe文件位置,這里我的是在C盤

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64


在變量名處填寫LIB,找到自己的VS所在的4個目錄,添加進去。
我的VS地址在

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\lib\x64 C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64 C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt_enclave\x64 C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\um\x64


再次添加變量
一共6個地址

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\cppwinrt C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\shared C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\um C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\winrt


變量全部添加完成,打開Windows的命令行,輸入cl查看是否配置完成,如果出現下面截圖,則配置完成。

2、cl.exe,linker.exe編譯鏈接Windows API程序

找到Win.cpp這個文件,在當前目錄框內輸入cmd


編譯完成后文件夾會出現一個OBJ文件

生成OBJ文件后,開始鏈接,打開項目,



將后面的依賴項復制


編譯完成

輸出結果

3、cl.exe,linker.exe編譯鏈接MFC程序

使用命令cl /c /D “UNICODE” /EHsc MFC2.cpp

編譯成功

再編譯剩下的兩個.cpp文件,生成更上面一樣的3個OBJ文件,原理相同,將3個obj文件link在一起

link MFC2.obj MFC2Dlg.obj pch.obj

輸出結果

總結

本次實驗實在比前幾次都難,主要的問題就是不熟悉流程,同時配置環境也比較麻煩,編譯過程中遇到的環境配置問題也比較多,總的來說,好幾個小時下去,還是有收獲的。
參考:https://blog.csdn.net/ssj925319/article/details/109033576

總結

以上是生活随笔為你收集整理的MFC窗口程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。