MFC
Visual Studio 调试效率提升小Tips 桌面 MFC应用程序增加控制台窗口
# Visual Studio IDE ## 调试问题 * 调试时中文字符串显示乱码或者问号 => 将该变量添加到监视,在变量名后添加`,s8` ## 为 gui 程序添加 console 窗口打印信息 ```cpp // wxh add console for print info! if (!A ......
MFC-修改本进程权限为调试
HANDLE hToken; //存放获得的令牌 TOKEN_PRIVILEGES tp; //令牌权限结构体 /* 一个LUID_AND_ATTRIBUTES结构体. 每个结构体包括LUID和特权的属性 typedef struct _TOKEN_PRIVILEGES { ULONG Privil ......
WIN10 由于找不到mfc140u.dll,无法继续执行代码
最近遇到win10提示mfc140u.dll找不到,总是弹窗的问题.  网上一番百度搜索后发现给的方法都不能 ......
MFC对话框标题栏去掉图标
需要在OnInitDialog里加 ModifyStyleEx(WS_EX_DLGMODALFRAME, 0); BOOL CDlgXXX::OnInitDialog() { CDialog::OnInitDialog(); // 去掉对话框标题栏上的图标 ModifyStyleEx(WS_EX_D ......
MFC-通过HWND获取HANDLE
HWND hWnd = ::FindWindow(_T("Windows.UI.Core.CoreWindow"), NULL);//获取与指定窗口类名和窗口名的最顶层窗口的窗口句柄 //寻找系统计算器句柄(win10) if (!hWnd) { AfxMessageBox(_T("系统计算器句柄没 ......
MFC视图切换大全总结
## 单纯视图之间的切换 单文档多视图切换是我在学习MFC中遇到的一个老大难问题,在今天总算是一一破解了。我觉得视图切换分为三个等级,第一是在未切分窗格的情况下切换视图类;第二是在分割窗格的一个窗格内实行视图切换;第三是在分割窗格和未分割之间的切换和视图切换。 在MFC创建SDI的伊始,MFC默认的 ......
MFC程序隐藏托盘+右键关闭菜单
背景介绍: 我的程序是启动后,默认就隐藏到托盘中,等待http请求后,显示界面。所以最小化到托盘的代码,我是写在初始化里面。 正文: 一、自定义消息 WM_SHOWTASK #define WM_SHOWTASK (WM_USER + 101) 二、在类向导中添加消息处理 点击【类向导】、【消息】、 ......
MFC-Gdiplus使用前设置
第一步:在应用程序中添加代码 #include "gdiplus.h" using namespace Gdiplus; #pragma comment( lib, "gdiplus.lib" ) 第二步:在应用程序的类中 ULONG_PTR m_gdiplusToken; 第三步:在应用程序h文件 ......
MFC-GetProcAddress获取动态链接库中函数的地址
HMODULE hmodule=::GetModuleHandle(_T("kernel32.dll"));//获取动态链接库的模块句柄 typedef DWORD(*p)(void);//声明函数指针数据类型 char ch[] = "GetCurrentThreadId"; //【特别注意:这个 ......
MFC-GetModuleHandle获取动态链接库的模块句柄
HMODULE hmodule=::GetModuleHandle(_T("kernel32.dll"));//获取动态链接库的模块句柄 /* 参数:LPCTSTR 指向含有模块名称字符串的指针 返回值:HMODULE,如执行成功成功,则返回模块句柄。零表示失败。获取错误信息 */ ......
关于 “无法启动此程序,因为计算机中丢失mfc140.dll,尝试重新安装该程序已解决此问题”故障排除记录
这个问题花了很久的时间百度,后来终于理解了dll文件的作用。 VC运行库有必要下吗?VC++运行库有什么用? vc运行库里面包含的dll和ocx文件可以确保很多软件能够正常运行,因为有很多软件是用VC++语言编写的,那么在运行的时候也需要相应的运行库支持,下面系统之家小编来详细介绍一下VC++运行库 ......
MFC学习随笔
1.原理 1.1设计窗口 wc.cbClsExtra = 0; //类的额外内存 wc.cbWndExtra = 0; //窗口额外内存 wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH); //设置背景 - 白色 wc.hCursor = ......
MFC-CListCtrl-LVM_GETITEMTEXT获取项信息
LVITEM lvi; TCHAR ch[256]; lvi.pszText = ch; lvi.cchTextMax = 256; lvi.mask = LVIF_TEXT; ::SendMessage(hWnd4, LVM_GETITEMTEXT, (WPARAM)0,(LPARAM)&lvi) ......
MFC-CListCtrl-SendMessage获取项目总数
int count = (int)::SendMessage(hWnd4, LVM_GETITEMCOUNT, (WPARAM)0, (LPARAM)0);//获取项目总数 /* 参数4和参数4 必须为0 返回值:返回项目总数 */ str.Format(_T("项目总数=%d\r\n"),coun ......
MFC-CListCtrl-GetSelectedCount获取被选中项目的总数
UINT n=mylist4.GetSelectedCount();//获取被选中项目的总数 str.Format(_T("n=%d\r\n"), n); OutputDebugString(str); ......
MFC-CListCtrl-获得总列数
int nHeadNum = mylist4.GetHeaderCtrl()->GetItemCount();//获得总列数 str.Format(_T("总列数nHeadNum=%d\r\n"), nHeadNum); OutputDebugString(str); ......
MFC-CListCtrl-GetColumn获取列中某项信息
LVCOLUMN lvcol; TCHAR str[256]; lvcol.mask = LVCF_TEXT; lvcol.pszText = str; lvcol.cchTextMax = 256; BOOL b7=mylist4.GetColumn(1, &lvcol);//获取列中某项信息 / ......
MFC-CListCtrl-SetCheck设置复选框的状态
mylist4.SetCheck(1,TRUE);//设置复选框的状态 /* 参数:TRUE 选中;FALSE 不选中 */ ......
MFC-GetCursorPos获取鼠标屏幕坐标
void CHitTestDlg::OnTimer(UINT_PTR nIDEvent) { // TODO: 在此添加消息处理程序代码和/或调用默认值 CString str; POINT point = { 0 }; BOOL b=::GetCursorPos(&point); //获取鼠标屏幕 ......
MFC-Pie绘制饼图
HDC hdc = ::GetDC(m_hWnd); BOOL b = Pie(hdc, 10, 10, 200, 200, 130, 200, 160, 10);//绘制饼图 /* 参数1:HDC 参数2和参数3:int 限定矩形左上角坐标 参数4和参数5:int 限定矩形右下角坐标 参数6和参数 ......
MFC-Ellipse绘制椭圆
HDC hdc = ::GetDC(m_hWnd); BOOL b = Ellipse(hdc,50,50,350,250);//绘制椭圆 /* 椭圆的中心是限定矩形的中心,使用当前画笔画椭圆,用当前的画刷填充椭圆 参数1:HDC hdc 参数2:int nLeftRect 指定限定矩形左上角的X坐 ......
MFC-LineTo绘制直线
HDC hdc = ::GetDC(m_hWnd); BOOL b = ::MoveToEx(hdc,100,100,NULL); //移动绘制点 BOOL b1=LineTo(hdc, 200, 50);//绘制直线 /* 参数1:HDChdc 参数2:intX 线段终点X坐标位置,采用逻辑坐标表 ......
MFC-MoveToEx移动绘制点
HDC hdc = ::GetDC(m_hWnd); BOOL b = ::MoveToEx(hdc,100,100,NULL); //移动绘制点 /* 参数1:HDC hdc:设备上下文句柄 参数2:int X:传入参数:新位置的X坐标。 参数3:int Y:传入参数:新位置的Y坐标 参数4:LP ......
MFC-NM_CLICK鼠标左键点击CListCtrl控件消息
NM_CLICK 是鼠标左键点击CListCtrl控件客户区时激发的消息 添加消息函数 选中控件--> ......
MFC-CListCtrl-DeleteAllItems删除所有项
BOOL b7=mylist4.DeleteAllItems();//删除所有项 ......
MFC-CListCtrl-获得总列数
int nHeadNum = mylist4.GetHeaderCtrl()->GetItemCount();//获得总列数 str.Format(_T("总列数nHeadNum=%d\r\n"), nHeadNum); OutputDebugString(str); ......
MFC-GetHeaderCtrl获取列头指针
CHeaderCtrl* phead=mylist4.GetHeaderCtrl(); ......