推荐你看一下《win32核心编程》这本书。win编程和dos概念是不同的,主要就在于线程、消息和窗口的概念,这三个概念不能很好的理解,编程会始终处于迷糊状态。
线程首先是“CPU时间片分配”概念,是和主进程“并发”同时进行的。
创建并“抛出”线程后,两者同时执行,如果没有waitingforsingleobject之类的语句,两个线程之间互不干扰。所以不是“一根线”的概念,没有怎么进入一说。
在VIEW中,你可以通过函数GetParentFrame来获得FRAME类对象,然后通过参数赋值就可以了, 在FRAME中,可以通过GetActiveView来实现与VIEW对象的交互
平时我们在测试我们的应用程序时都是自己编译一个小的测试程序,通过这个小的测试程序一直运行来检测程序的稳定和存在的问题。
为了更直观的观察到程序的通信过程,我们往往通过编写一个MFC小程序来完成。MFC工程说白了就是通过微软的类库开发我们自己的应用界面程序。
那么怎么通过vs2011来创建我们自己的基于对话框的MFC工程呢?下面小就从自己以前创建MFC的经历和大家分享一下。
微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是微软公司提供的一个类库(class libraries),以C++类的形式封装了Windows API。
并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
首先你要确定是设备是支持的USB协议还是HID协议,如果是USB设备,你需要安装对应的驱动,然后枚举USB设备,得到与此设备GUID一致的设备句柄,然后打开设备(createfile),再通过DeviceIoControl来向设备发送命令字,并在输入输出缓冲区里得到数据,如果是HID协议,先通过VID和PID来枚举并打开设备句柄,通过调用HIDDLL的函数来完成通信。这些 *** 作的前期都需要你知道此设备的一些工作字,也就是硬件开发时写到固件的程序是如何去发送和接收,解析上位机数据的。
分包与重组的过程是肯定要有的,但问题是 UDP 的传输方式不保证可靠性,但是文件传输必须要可靠,这一点你想怎么解决,我的看法是你需要在你的协议中解决这个问题,为了增强可靠性就需要在你的程序中实现接让收方发送回执。你要考虑的是如果丢包双方该如何响应?Windows 消息机制只能满足处理时的可靠性,不能保证传输过程的可靠性。
以上就是关于MFC 多线程 socket通信 怎样从主线程进入其他线程全部的内容,包括:MFC 多线程 socket通信 怎样从主线程进入其他线程、MFC中VIEW类 和FRAME 类之间怎么进行通信、mfc怎么和代码联系起来等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)