- 博客(8)
- 资源 (4)
- 收藏
- 关注
原创 进程间通信 2 -- 使用WM_COPYDATA消息进行通信
<br /> <br />在“进程间通信 1 -- 使用RegisterWindowMessage实现消息通信” 中已经讲过了通过RegisterWindowMessage注册全局消息来实现进程间的通信,今天讲通过WM_COPYDATA消息进行进程间通信。注:这个适用于少量数据通信的情况。<br /> <br />在Win32中,WM_COPYDATA消息主要目的是允许在进程间传递只读数据。SDK文档推荐用户使用SendMessage()函数,接收方在数据复制完成前不返回,这样发送方就不可能删除和修改数据。
2011-04-25 20:40:00 1040
原创 工作线程与消息循环
工作线程与消息循环 首先声明, 这里的工作线程与UI线程是相对的,即没有任何窗口的. 如果需要与主线程或其它辅助线程通讯,有几种方法如事件,消息,信号等,也可以是以上几种方法的综合运用.下面就列出以下3种通讯方法的代码框架(1)只用消息通讯1 DWORD ThreadProc(LPVOID lParam)2 {3 //创建线程消息队列4 MSG msg;5 PeekMessage(&msg, NULL, WM_USER, WM_USER, PM_NOREMOVE);6 //通知其它线程消息队列已创建好7 S
2011-04-25 15:34:00 1633 1
转载 Windows下编译Firefox
<br /><br />编译Firefox多次,但几次都因为各种原因编译失败,现在终于编译成功,详细编译步骤过程如下下载源码<br />源码下载有两种方式,直接下载所有源码和通过CVS,个人建议直接下载,下载地址:<br />ftp://ftp.mozilla.org/pub/mozilla.org/firefox,在里面可以选取你要编辑的版本,源码主要在nightly和releases文件中,releases指已发行的版本,相对于nightly来说更稳定一些,编译采用releases文件中的源码,rele
2011-04-16 17:40:00 702
转载 static_cast、dynamic_cast、reinterpret_cast、和const_c
static_cast、dynamic_cast、reinterpret_cast、和const_cast 关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++ 的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast, dynamic_cast。标准C++中有四个类型转换符:static_cast、dynam
2011-04-16 17:20:00 465
转载 DoMessageBox 使用DoMessageBox 自定义 AfxMessageBox
<br />一、需求 <br /><br /> 与标准的 MessageBox 相比,MFC提供了 AfxMessageBox 的方法是我们对消息框的变得更加容易。然而简单的 AfxMessageBox 有时已经不能够满足我们的需求了:有时候我仅仅想提示用户一下,并不需要用户确认,也就是说过一段时间消息框就能自动关闭。 <br /><br /> 您可能马上会想到,使用自己定义的对话框来替代程序中的 AfxMessageBox,没错,这样的结果非常能够让你满意,但怎么实现呢?
2011-04-07 16:28:00 1523
原创 MFC消息传递
<br />首先讲几个概念:<br /> <br />一般来说,每个应用程序都有一个UI线程,应该说大部分应用程序都只有一个UI线程。<br /> <br />UI线程,简单的理解:1,是一个线程。 2,创建了UI(准确的说应该是进行了消息循环)。<br /> <br />在MFC的应用框架中UI线程一般就是CWinApp的派生类。因为CWinApp派生自CWinThread,具有处理线程的功能(满足第1点)。<br /> <br />在CWinApp派生类的InitInstance中创建了主窗口(满足第2
2011-04-07 10:38:00 1451
转载 MFC关键技术
<br />查资料看到一篇文章,可以参考。MFC六大关键技术之初始化过程我并不认为MFC减轻了程序员们的负担,MFC出现的目的虽然似乎是为了让程序员不用懂得太多就可以进行视窗编程,但本人在MFC里徘徊了很久很久(因为那时没有书本详细介绍MFC的原理),毫无收获。可能朋友们会说,怎么一定要了解MFC的具体呢,“黑箱”作业不行吗?这不是微软的初衷吗?<br /><br /> 不行!!!如果这样,我宁愿永远不选择MFC!在学电脑之前,本人学习的东西大都与艺术不无关系,小学时参加过全国书画比赛获银奖。儿时的爱好就
2011-04-06 20:29:00 1868 3
原创 程序的生和死
今天给新来的同事讲MFC的消息循环,诸如什么时候启动的,如何循环的,消息是如何传递的等等,结果收效甚微,原因是他们连基本的程序产生到程序运行结束的基本过程都不清楚,所以我决定先梳理一个程序从生到死经历的过程,再讲消息传递。调用CreateProcess创建一个进程内核对象 ↓系统为进程创建一个私有地址空间(虚拟地址空间) ↓在进程地址空间保留区域将exe文件和需要的DLL映射到进程的地址空间
2011-04-06 20:22:00 839
教你玩转网络编程模型之完成例程(重叠I/O)配套代码
2011-10-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人