
MFC
零隐
这个作者很懒,什么都没留下…
展开
-
vc 内存泄漏管理工具
简述C/C++ 程序越复杂,内存的管理显得越重要,稍有不慎就会出现泄漏。如果内存泄漏不是很严重,在短时间内对程序不会有太大影响,这也使得内存泄漏问题有很强的隐蔽性,不易被发现。然而不管内存泄漏多么轻微,当程序长时间运行时,其破坏力是惊人的 - 从性能下降到内存耗尽,甚至会影响其他程序的正常运行。| 版权声明:一去、二三里,未经博主允许不得转载。VLDVLD(Visual Leak De...原创 2020-07-02 14:01:20 · 226 阅读 · 0 评论 -
转载 透明对话框
BOOL CDialog7::OnInitDialog(){ CDialog::OnInitDialog(); // TODO: 在此添加额外的初始化 ::SetWindowLong(GetSafeHwnd(),GWL_EXSTYLE,::GetWindowLongPtr(GetSafeHwnd(),GWL_EXSTYLE)|WS_EX_LAYERED); thi...转载 2019-04-24 14:48:17 · 436 阅读 · 0 评论 -
MFC 单例
1、单例用于频繁调用某些资源时,防止多次加载资源和释放资源,以下是单例的代码。申明代码(.h)#pragma onceclass CSingleton{private: CSingleton();//单例化 static CSingleton* m_pSingleton;//单例对象指针 static CCriticalSection m_limit;//临界量 用于限制...原创 2019-01-30 15:00:03 · 888 阅读 · 0 评论 -
MFC 不同进程间发送带长数据消息(SendMessage)
1、::SendMessage 这是发送消息且挂起,坐等消息处理结束,方能返回值。但发送带数据消息时由于数据比较长,接收不能正确获得,导致程序获取数据失败不能正常执行,处于这个原因,找到了一个发送数据拷贝事件的宏WM_COPYDATA,就当起了长数据传送到目的句柄(窗口句柄)职责。发送消息代码COPYDATASTRUCT cpd; // 给COPY...原创 2019-02-02 09:29:44 · 1151 阅读 · 0 评论 -
MFC 发送模拟双击消息(PostMessage)
1、用PostMessage CRect rect; CWnd *pwnd = (CWnd *)GetDlgItem(IDC_BUTTON2); pwnd->GetWindowRect(rect); SetCursorPos(rect.left+5, rect.top+5); ::PostMessage(this->m_hWnd, WM_COMMAND, MAKEWPAR...原创 2019-01-28 09:42:11 · 1607 阅读 · 0 评论 -
MFC OCX三种调用方法
1、以ATL的方式进行调用,ocx的本质是ATL,所以可以用调用ATL的方法进行调用。不过在插入头文件的时候跟ATL不同,需要以文件的形式加载读取他的头文件(因为ocx是控件只会生成在"ActiveX控件中的MFC类",不会生成在"ATL类型库里面的MFC类")。选择完文件之后,即可添加对应的接口类。void Ctest5Dlg::OnBnClickedTestBt(){ // ...原创 2019-01-25 17:32:24 · 5949 阅读 · 1 评论 -
MFC 主线程等待子线程退出函数(MsgWaitForMultipleObjects)
void WaitForThreadExit(void){ DWORD dwRet; MSG msg; int wait_count=4;//线程句柄有4个 int nExitThreadCount=0; while(1) { dwRet = MsgWaitForMultipleObjects(wait_count, hArray, FALSE, INFINITE, QS_...原创 2018-09-06 16:58:59 · 4057 阅读 · 0 评论 -
MFC CMFCToolBar静态工具栏和动态工具栏,加载自定义图片(真彩透明)
现在把我最新研究的对CMFCToolBar心得写在这边。现在介绍两种加载工具栏的方式:一种是静态加载工具栏,跟普通的加载工具栏一样,只是用了自定义图片。一种是动态加载工具栏,这个也是需要静态工具的帮忙,这个的话原因还没有研究,但可以达到动态的效果。 还有特别需要介绍的是增加透明工具栏图片的方法。不知道一篇文章写这么多好不好。就算是分享学习了。 1、增加透明工具栏按钮图片...原创 2017-09-19 17:07:56 · 9140 阅读 · 5 评论 -
MFC 引用CMFC新类要注意的事项
1、引用CMFC新类时会出现内存泄漏的提示。解决方案就是在程序app类的,退出程序中加入 int CMFCControlApp::ExitInstance(){ CMFCVisualManager::DestroyInstance(TRUE);//释放资源 return CWinApp::ExitInstance();}这样就可以避免控件的内存泄漏,只是...原创 2017-09-15 15:22:51 · 569 阅读 · 0 评论 -
MFC GB2312、UTF-8、unicode 之间转换
//GB2312到UTF-8的转换static int GB2312ToUtf8(const char* gb2312, char* utf8){int len = MultiByteToWideChar(CP_ACP, 0, gb2312, -1, NULL, 0);wchar_t* wstr = new wchar_t[len+1];memset(wstr, 0, len+1);...原创 2017-09-26 10:49:57 · 2534 阅读 · 1 评论