MFC
文章平均质量分 92
q472599451
这个作者很懒,什么都没留下…
展开
-
C++如何处理内联虚函数
当一个函数是内联和虚函数时,会发生代码替换或使用虚表调用吗? 为了弄清楚内联和虚函数,让我们将它们分开来考虑。通常,一个内联函数是被展开的。 01.class CFoo {02. 03.private:04. 05.int val;06. 07.public:08. 09.int GetVal()转载 2012-07-30 23:49:21 · 424 阅读 · 0 评论 -
Socket中如何设置连接超时
设置connect的超时很简单,CSDN上也有人提到过使用select,但却没有一个令人满意与完整的答案。偶所讲的也正是select函数,此函数集成在winsock1.1中,简单点讲,"作用使那些想避免在套接字调用过程中被锁定的应用程序,采取一种有序的方式,同时对多个套接字进行管理"(《Windows网络编程技术》原话)。使用方法与解释请见《Windows网络编程技术》。 在使用此函数前,需原创 2013-10-10 15:48:03 · 565 阅读 · 0 评论 -
10048错误(WSAEADDRINUSE)的错误处理
这两天在工作的过程中发现基于socket的网络程序中时不时发生connect()调用失败的错误,通过获取错误码,发现是WSAEADDRINUSE(10048)的错误,MSDN的说明如下: 这种错误常常发生在bind函数中,当bind已经绑定的端口被占用后,再次绑定同一端口就会发生错误,但这一错误不影响bind的执行,换句话说,bind第二次执行并不发生错误,但是在紧接着原创 2013-07-18 10:05:02 · 3741 阅读 · 0 评论 -
C++发送邮件和附件
头文件[cpp] view plaincopy/*********************************************************************** *发送邮件模块头文件 *可以发送文本和附件(支持多个附件一起发送) ****************************************转载 2013-07-10 18:50:16 · 3439 阅读 · 1 评论 -
MFC:XP下屏蔽Ctrl+Alt+Del等组合键的方法
屏蔽Ctrl+Alt+Del等组合键也是一个老生长谈的话题了,95、98系统中有很多方法试用,但是在Xp下就不能用了,而本文则不考虑Win7系统,因为那又是另一种方法了,本文只介绍XP下屏蔽这些组合键的方法。屏蔽Ctrl+Alt+Del我知道的有两种,一个是直接改写注册表,这个比较简单,也能禁止,但是会有提示“管理员禁止任务管理器”的字样,这是因为直接关闭了系统服务,虽然效果能达到但是不是我们原创 2013-05-06 11:31:48 · 2810 阅读 · 0 评论 -
MFC自绘属性的总结
CTreeCtrl是在OnNMCustomdraw中自绘的,不要设定其他属性 CListCtrl是在DrawItem中自绘的,要设定属性LVS_OWNERDRAWFIXED|LVS_REPORT CButton是在DrawItem中自绘的,要设定属性BS_OWNERDRAW CMenu是在DrawItem中自绘的,要把每一项都设定属性MF_OWNERDRAW,用到递归方法原创 2013-04-02 10:31:18 · 616 阅读 · 0 评论 -
在 VC++6.0 中将 JPG 格式图片转换成 BMP 格式
在 VC++6.0 中将 JPG 格式图片转换成 BMP 格式思路:利用 GDI+来完成难点: (1)配置 GDI 开发环境,添加配置代码(2)在当文档程序中添加转换代码注意:本文档由 ybdesire 参考网上资料撰写完成,代码已经做过测试,可直接复制张贴实现过程:一、 配置 GDI 开发环境(1) 下载 GDI+ SDK for Visual原创 2013-03-14 20:37:15 · 2329 阅读 · 0 评论 -
dialog全屏
方法一:在Dialog::OnInitDialog()中加入:ModifyStyle(WS_CAPTION,0,0); // 如果只是要普通的全屏,不想去掉标题栏,就不用第一个语句SendMessage(WM_SYSCOMMAND,SC_MAXIMIZE,0); 不过这种方法不方便调整控件的位置,此时可以考虑方法二 方法二:转载 2013-03-14 18:22:13 · 651 阅读 · 0 评论 -
TCP 编程。
sockets(套接字)编程有三种,流式套接字(SOCK_STREAM)TCP,数据报套接字UDP(SOCK_DGRAM),原始套接字(SOCK_RAW);基于TCP的socket编程是采用的流式套接字。在这个程序中,将两个工程添加到一个工作区。要链接一个ws2_32.lib的库文件。服务器端编程的步骤:1:加载套接字库,创建套接字(WSAStartup()/socket());2原创 2013-03-06 21:57:32 · 485 阅读 · 0 评论 -
获取windows系统时间
获取系统时间,这个方法比较简单SYTimeEMTIME Time={0};GetLocalTime(&Time);//获得当前本地时间GetSyTimeemTime(&Time);//这一个是获得格林威治时间,一般不用SYTimeEMTIME结构说明typedef struct _SYSTEMTIME { WORD wYear; //年 WORD原创 2013-01-18 16:48:35 · 4558 阅读 · 0 评论 -
udp dll编程中遇到一个问题
今天在改一个win32的程序,其中调用了CSOCKET,按以下方法改动项目1、工程设置中,将MFC的使用由原来的“使用标准windows库”改为“在共享DLL中使用MFC”如果是英文版,相关选项是:Microsoft Foundation Classes: Use MFC in a shared dll, no using MFC2、头文件包含不同的MFC类原创 2013-01-28 23:13:51 · 687 阅读 · 0 评论 -
dll 计时器
方法一:SetTimer(NULL, 0, 1000, (TIMERPROC)Timer2Proc);VOID CALLBACK Timer2Proc(HWND hWnd, // handle of window for timer messagesUINT uMsg, // WM_TIMER messageUINT idEvent, // timer identifier原创 2013-01-22 10:40:13 · 789 阅读 · 0 评论 -
MFC下编写的Split函数
四个参数说明如下:a:要分割的字符串b:存放的数组,要定义到足够能放下所有分割结果。c:分割后实际生成的数组元素最大下标,如果没有元素生成,则函数调用后为-1。注意,c在函数调用后值要发生变化,这是一个地址引用参数。d:分隔符,长度不限,并不限定为一个字符void Split(CString a, CString *b, int &c, CString d){int d原创 2012-12-12 16:54:31 · 511 阅读 · 0 评论 -
MFC 开机自启动
void CTestDlg::OnBoot() { UpdateData(); // 写入注册表,开机自启动 CString sPath; GetModuleFileName(NULL,sPath.GetBufferSetLength(MAX_PATH+1),MAX_PATH); sPath.ReleaseBuf原创 2012-12-12 16:53:05 · 412 阅读 · 0 评论 -
串口编程
类库文件:cncomm.h。下面是简单应用的笔记:发送数据:write读数据:read打开串口:open //!串口发送数据void CCncomm_zDlg::OnOK(){ // TODO: Add extra validation here CString strSend; m_strSend.GetWindowText(strSend); c原创 2012-12-11 16:27:41 · 563 阅读 · 0 评论 -
基于UDP的简单聊天程序
#pragma comment(lib,"ws2_32.lib")#include #include void main(){ WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD(1,1); err = WSAStartup(w原创 2013-03-06 14:24:44 · 841 阅读 · 0 评论