MFC的main函数在什么地方??请各位高手指点迷津!!!
2025-06-25 08:57:15 | 第一次世界杯 | admin | 1805°c
社区
界面 帖子详情 MFC的main函数在什么地方??请各位高手指点迷津!!! cppwxr 2003-05-21 01:14:17 最近开始学习MFC发现总是很糊涂,对于类之间的关系和程序的初始化等问题。一般函数都是从main()主函数开始运行的,但我找了半天都没有看到main()的影子。我做了一个很简单的对话框,什么都没有。我的程序名为my。class MyApp : public class CWinApp在my.h中,在my.cpp中只看到MyApp theApp;我怎么也搞不清楚,程序从什么地方开始执行的???使得编出来的程序也很模糊。请各位高手指教一下。
还有DECLARE_MESSAGE_MAP()是什么意思,在什么地方可以找到这个宏的定义。
...全文
1485 17 打赏 收藏 MFC的main函数在什么地方??请各位高手指点迷津!!! 最近开始学习MFC发现总是很糊涂,对于类之间的关系和程序的初始化等问题。一般函数都是从main()主函数开始运行的,但我找了半天都没有看到main()的影子。我做了一个很简单的对话框,什么都没有。我的程序名为my。class MyApp : public class CWinApp在my.h中,在my.cpp中只看到MyApp theApp;我怎么也搞不清楚,程序从什么地方开始执行的???使得编出来的程序也很模糊。请各位高手指教一下。 还有DECLARE_MESSAGE_MAP()是什么意思,在 复制链接
扫一扫 分享 转发到动态 举报 AI 作业
写回复 配置赞助广告取 消
确 定
用AI写文章 17 条回复 切换为时间正序 请发表友善的回复… 发表回复 打赏红包 需支付: 0.00 元 取 消 确 定 zhanglingfei 2003-05-22 打赏举报 回复 在MFC里原先C语言里的main()被WinMain()取代了,而CWinApp又取代了WinMain()的地位。WinMain()被MFC包装起来了,咱们看不到。
1.程序的开始是从一个Application object产生而开始的。
2.消息映射机制在*.h文件中用DECLARE_MESSAGE_MAP()声明的,
在*.cpp中以下面语句和上面的语句配合。
BEGIN_MESSAGE_MAP(子类, 父类)
//{{AFX_MSG_MAP(CToolColorSelect)
//消息
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
这样消息映射机制就建立起来了。
更详细的请看,侯俊杰的《深入浅出MFC》,华中科技大学出版。 smartukyo 2003-05-22 打赏举报 回复 main有四个版本,分别是控制台程序、GUI程序的ANSI版本和UNICODE版本,它是编译程序自动设置的。其源代码在MFC的相应文件中,很容易找到。上面也都说了。可以看一看《Windows核心编程》。GUI程序的一般的流程是:
构造theApp;
进入AfxWinMain();
在AfxWinMain中,将调用CWinThread的Run(),这里是整个程序的控制中心,其实核心的也就几句话:
GetMessage(...)
TranslateMessage()
DispatchMessage()
各消息被这几句话源源不断地泵到各窗口过程中,完成各动作 思危 2003-05-22 打赏举报 回复 按 F11 运行程序,你就可以找到MFC程序的入口函数了 liuguiqing 2003-05-22 打赏举报 回复 你可以一开始运行程序,就让它单步执行。这时,你就会发现FMC是从winmain开始的,而且*APP在什么时候调用,能清楚的看到。*APP只是一个主线成,它并不是main。 guchan 2003-05-22 打赏举报 回复 up楼上 joachern 2003-05-22 打赏举报 回复 最好的方法调试 step into .. step step kwiner 2003-05-22 打赏举报 回复 你无需知道它在哪啊 BlueSky2008 2003-05-22 打赏举报 回复 是在应用程序类的构造函数中。 brave_heart 2003-05-22 打赏举报 回复 Search in AppModul.cpp under your VC installation directory,
_tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPTSTR lpCmdLine, int nCmdShow) sharpblade 2003-05-22 打赏举报 回复 DECLARE_MESSAGE_MAP()消息映射 jwyhit 2003-05-21 打赏举报 回复 如各位高手所言啊 cppwxr 2003-05-21 打赏举报 回复 谢谢给位高手的指教。臭屁屁在这个不胜感激。 feiniaoliang 2003-05-21 打赏举报 回复 是的,再研究mfc的时候,最好先看一些参考书!如:侯俊杰的《深入浅出mfc》;
要不然你肯定是一头雾水!!!呵呵~~~~~ shootingstars 2003-05-21 打赏举报 回复 theApp是一个mfc类的对象,程序的入口函数被封装在类的构造函数当中了。
DECLARE_MESSAGE_MAP是一个消息映射的宏。
你可以在侯俊杰的《深入浅出mfc》中找到详细的答案。
QQQQXSH 2003-05-21 打赏举报 回复 mfc框架完全封装了winmain()
所以你只需关注winApp
triggerd 2003-05-21 打赏举报 回复 《深入潜出MFC》第一,六章说得很详细。
winmain.cpp中有代码。 醉马不肖 2003-05-21 打赏举报 回复 1.在mfc框架中,买本《mfc2e》看看。。。
2.F12 VC/MFC 编程经验 VC/MFC 编程经验总结1URL:http://expert.csdn.net/Expert/topic/2398/2398212.xml?temp=.3510706| 在VC的使用过程中,每个人或多或少都会遇到一些麻烦,而这些问题可能其他人也同样遇到过,或许还没能解决。当你发现问题根结所在时,兴奋之余,欢迎你告诉他人同类问题的解决之道。 大家如果有新的发现,请把你的编程经验收藏在这个帖子 VC/MFC 编程经验总结 VC/MFC 编程经验总结1URL:http://expert.csdn.net/Expert/topic/2398/2398212.xml?temp=.3510706| 在VC的使用过程中,每个人或多或少都会遇到一些麻烦,而这些问题可能其他人也同样遇到过,或许还没能解决。当你发现问题根结所在时,兴奋之余,欢迎你告诉他人同类问题的解决之道。 大家如果有新的发现,请把你的编程经验收藏在这个帖子 VC++中可能遇到的问题 T 如何用程序控制电源管理设置 Q 我们知道在电源选项 属性 里面可以设置 关闭监视器 1分钟之后,...,从不 关闭硬盘 1分钟之后,...,从不 待机时间 1分钟之后,...,从不请问这些设置我怎么用程序来实现 比如我现在要把关闭监视器设成 5分钟之后 请问各位大虾,应该怎么办?是不是要调用API?如果是,应该调用什么函数?另外补充说明:如果是调出控制面板让用户自 关于ucGUI对个多个对话框切换的问题 最近在用ucGUI写一个终端的界面,碰到多个对话框之间相互调用,会弹出提示"Max. message nesting exceeded, Message skipped."的错误。分析原因后,发现是由于在对话框的回调函数中调用GUI_ExecDialogBox()这个函数创建对话框的缘故,因为GUI_ExecDialogBox()函数是创建对话框并且马上执行对话框的回调函数,一直到该对话框的动作处 VC++中可能遇到的问题收藏 VC++中可能遇到的问题收藏 | 旧一篇: 在VC中动态加载ODBC时的一些小细节 function StorePage(){d=document;t=d.selection?(d.selection.type!=None?d.selection.createRange().text:):(d.getSelection?d.getSelection():);
界面
15,980
社区成员
115,867
社区内容
发帖 与我相关 我的任务 界面 VC/MFC 界面 复制链接
扫一扫 分享 确定 社区描述 VC/MFC 界面 社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告 试试用AI创作助手写篇文章吧
+ 用AI写文章