- 博客(666)
- 资源 (54)
- 收藏
- 关注
原创 CreateSolidBrush 内存释放
偶尔发现任务管理器中程序GDI对象动态增加,查了N久,HBITMAP,DC,FONT,HPEN,终于发现是CreateSolidBrush 的问题。在OnCtrlColor中CreateSolidBrush 一定要释放。要么定义为成员变量,析构释放,要么每次都在OnCtrlColor中释放。HBRUSH CXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWn
2015-06-24 17:15:07 4147
原创 CImage load内存泄露
1. 因为需要引用本地jpg文件,且要动态切换,用到CImage类。CImage img;CString strFilePath = _T("1.jpg");if (S_OK == img.Load(strFilePath)){m_bmp = img.Detach();//m_bmp 为成员变量HBITMAPm_pic_next.SetBitmap(m_bmp); //m_pic_n...
2015-06-19 13:01:53 4505 2
转载 按回车自动跳到下一个dialog
孙鑫书上的:void CTestDlg::OnOK() { // TODO: Add extra validation here //GetDlgItem(IDC_EDIT1)->GetNextWindow()->SetFocus(); //GetFocus()->GetNextWindow()->SetFocus(); //GetFocus()->GetWindow(GW_
2015-06-16 09:23:02 669
原创 全局钩子ESC 关闭程序
只需三步:1.定义钩子HHOOK MyHook; //接收由SetWindowsHookEx返回的旧的钩子2. 安装钩子BOOL CVLifeClient2App::InitInstance(){ // _CrtSetBreakAlloc(1467);//内存泄露检测 //安装钩子 MyHook = SetWindowsHookEx(
2015-06-16 09:18:11 1091
原创 Picture控件显示jpg
CImage img; HRESULT ret = img.Load( _T("E:\\2.jpg") ); // filename 是要加载的文件名(包含路径)bitmap = img.Detach(); m_picture.SetBitmap(bitmap);
2015-06-15 20:27:26 749
原创 CImage 显示JPG
bool CMainDlg::Show_JPG(CString strFileName, int Control_id){CImage m_Image;m_Image.Load(strFileName);CRect rect;CWnd *pWnd = GetDlgItem(Control_id);pWnd->GetClientRect(&rect);CDC *pDC =
2015-06-15 15:59:01 751
原创 capacity size
int cnt = vDetailInfo->sGame.seqCondition.size(); //int cnt = vDetailInfo->sGame.seqCondition.capacity();找到一个bug,用size而不是capacity。
2015-06-15 14:53:01 518
原创 内存泄露
Dumping objects ->{147} client block at 0x00405D30, subtype c0, 188 bytes long.f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\dumpcont.cpp(23) : atlTraceGeneral - a CMainLifeDlg object at $00405D30, 18
2015-06-15 11:19:04 1535 7
原创 URLDownloadToFile 直接下载文件
HRESULT ret=URLDownloadToFile(NULL,"http://img1.2345.com/duoteimg/softImg/soft/7/1331706305_41.jpg","123.jpg",0,NULL);
2015-06-14 19:35:08 16419 3
原创 ShowWindow不起作用
今天发现隐藏控件的ShowWindow不起作用,找了半天才发现是重写了OnEraseBkgnd,没有重绘背景。去掉return true;即可。BOOL CIndexDlg::OnEraseBkgnd(CDC* pDC){ //return true; return CDialogEx::OnEraseBkgnd(pDC);}
2015-06-10 14:18:58 5292
原创 对话框传值
void CXXDlg::Setting(){ CSettingDlg dlg; dlg.m_1= m_1; if(ID_OK == dlg.DoModal()){ m_1 = dlg.m_1;}}
2015-06-04 20:21:39 425
原创 非模态对话框内存释放
重写PostNcDestroy方法:添加delete this;即可void CPage2Dlg::PostNcDestroy(){ // TODO: 在此添加专用代码和/或调用基类 delete this; CDialogEx::PostNcDestroy();}
2015-06-01 18:27:08 781
原创 MFC 中文乱码
接收ICE传送过来的数据时,发生中文乱码,是由于这边是utf-8,需要转成改变gb2312,用第三方类即可。 strconv.cpp,strconv.h
2015-05-31 08:55:55 1821
原创 IME samples
IME :mfc100d.dll msvcr100d.dll ,syswow64下,debug下不能用,release用。
2015-05-30 12:57:18 593
原创 设置CEdit最长字符需放一起(VS2010)
DDX_Text(pDX, IDC_EDIT_PWD, m_strLoginPwd);DDV_MaxChars(pDX, m_strLoginPwd, 6);
2015-05-28 16:40:21 816
转载 CWnd与HWND的区别与转换
一、区别HWND是句柄,CWnd是MFC窗体类,CWnd中包含HWND句柄成员对象是m_hWnd.HWND是Windows系统中对所有窗口的一种标识,即窗口句柄。这是一个SDK概念。 CWnd是MFC类库中所有窗口类的基类。微软在MFC中将所有窗口的通用操作都封装到了这个类中,如:ShowWindow等等,同时它也封装了窗口句柄即m_hWnd成员。二、如何得到窗口对象指针C
2015-05-28 09:36:14 425
原创 子Tab中按钮进入其他子tab页面
#include "MyTabDlg.h" void CPara1::OnBnClickedButton1(){ ShowWindow(false); ((CMyTabDlg *)(GetParent()->GetParent()))->m_page2.ShowWindow(true); ((CTabCtrl*)GetParent())->SetCurSel(1); }
2015-05-27 18:58:46 1027
原创 对话框加载bmp为背景
void CXXXDlg::OnPaint(){// CPaintDC dc(this); // device context for painting CPaintDC dc(this); CRect rect; GetClientRect(&rect); CDC dcMem; dcMem.CreateCompatibleDC(&dc); CBit
2015-05-27 09:17:32 595
原创 VS 圆角矩形效果
#if defined _M_IX86#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df'
2015-05-26 17:12:04 1265
原创 开源库glog使用
windows下:1, 下载地址: https://github.com/google/glog点击Download ZIP 下载即可。2. 解压,打开google-glog.sln 编译,生成debug下的lib和dll文件;3. 将新建一个基于console 的demo工程,将lib和dll 拷贝到工程下,将windows目录下的glog头文件拷贝到工程下(目录一起
2015-05-26 16:21:46 6156
原创 MFC 控件背景色
由于需要,要讲GroupBox控件和文本控件Static的背景色设为一致。 OnCtrlColor中设置GroupBox背景色:if(pWnd->GetDlgCtrlID()==IDC_G){//GroupBox背景颜色CRect rc;GetDlgItem(IDC_G)->GetClientRect(&rc);pDC->FillSolidRect(rc,RGB(7
2015-05-25 15:43:50 4473
原创 fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
电脑更新了显卡驱动后出现此错误,按照网上的修改VS编译选项,无反应。卸载驱动,也无反应,最后下载Microsoft Visual Studio 2010 Service Pack 1(exe)安装后,问题解决。https://www.microsoft.com/zh-cn/download/confirmation.aspx?id=23691不过安装用了N久时间,真是无
2015-05-25 15:14:02 512
原创 MFC OnPaint某一区域绘制背景色
void CVLifeClientDlg::OnPaint(){ if (IsIconic()) { CPaintDC dc(this); // 用于绘制的设备上下文 SendMessage(WM_ICONERASEBKGND, reinterpret_cast(dc.GetSafeHdc()), 0); // 使图标在工作区矩形中居中 int cxIcon = Ge
2015-05-23 11:17:24 4528
原创 CHyperLink
VC 第三方类CHyperLink 可设置超链接,设置已访问或未访问状态。// HyperLink.h : header file////// HyperLink static control. Will open the default browser with the given URL// when the user clicks on the link.//// Cop
2015-05-22 13:42:56 1163
原创 Max2150
/******************** (C) COPYRIGHT 2013 JZDF Cor. ****************************** File Name : main.c* Author : Liuyong* Version : V1.0.0* Date : 0
2015-05-20 10:24:04 481
原创 VC不提示警告
编写代码经常有很多警告,有些需要注意,但大多数不需要注意。禁止提示警告:#pragma warning (disable:4244)这个挺好用的。
2015-05-20 10:10:33 952
原创 批处理打开目录
由于坚持打开c:\users\admin\documents\visual studio 2010\Projects 工程目录,在xp下cmd有记忆功能,在win7下没得。所以写个批处理打开:VS_Proj_Dir.bat : start c:\users\admin\documents\visual~1\Projects这里的visual~1是visual studi
2015-05-20 09:56:28 998
原创 XRAM 读写
//外部xram写void xram_write(unsigned int addr, char byte){ char xdata * data pwrite; // write pointer pwrite = (char xdata *) addr; // initialize write pointer
2015-05-20 09:25:03 2008
原创 ADC 配置
//-----------------------------------------------------------------------------// ADC0.c//-----------------------------------------------------------------------------// Includes//------------
2015-05-20 09:22:32 1639
原创 ADF4106配置
#includesbit clk = P0^0;sbit dat = P0^2;sbit le = P0^3;unsigned char send1,send2;void delay(unsigned char yc){ while(--yc);}void init_mcu(void){ OSC
2015-05-20 09:21:32 2465 2
原创 ICE 入门(1)
Ice 全称The Internet Communications Engine 。网络互联引擎。Ice 是一种面向对象的中间件平台。从根本上说,这意味着Ice 为构建面向对象的客户-服务器应用提供了工具、API 和库支持。Ice 应用适合在异种环境中使用:客户和服务器可以用不同的编程语言编写,可以运行在不同的操作系统和机器架构上,并且可以使用多种网络技术进行通信。无论部署环境
2015-05-19 14:04:41 927
原创 visual studio 32/64 位设置
1. 新建一个Consule工程:#include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]){ printf("%d",sizeof(int *)); while(1); return 0;}输出4说明是32位的编译器;输出8则是64位。2. 设置右键工程-属性-配置管理器-平台-新建x64.
2015-05-19 13:38:53 5144
转载 VC 显示红绿灯
void CTest_AllDlg::state(int xID, int color){CRect conRect;CWnd *pWnd=GetDlgItem(xID);//在图象控件中设圆形状态指示灯CDC *pDC=pWnd->GetDC();::GetClientRect(pWnd->m_hWnd,conRect);CBrush NewBrush((COLORREF
2015-05-19 09:14:39 3680
Agilent Technologies EMC Series Spectrum Analyzers
2013-12-21
VC,.BCB串口通讯代码
2012-12-12
WinPcap中文技术文档.chm
2011-09-20
RiftDK1源码
2016-10-26
支持win7 64位的hex2bin程序(v2.2)
2016-09-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人