![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++/MFC
文章平均质量分 53
一梦一程
这个作者很懒,什么都没留下…
展开
-
在使用VC++6.0常见问题“Error spawning cl.exe”的解决方法
很多朋友在安装VC++6.0后,无论编写多么简单的程序,点击编译或者链接后出现这样的一个错误提示:Error spawning c1.exe,很是郁闷650) this.width=650;" alt="" src="/neweditor/editor/images/smiley/3.gif" />。很多人想都没想选择重装VC++6.0,可是很多人重装后,又出现了同样的问题。总不能因为这样的一个小原创 2016-07-16 19:57:16 · 1666 阅读 · 0 评论 -
使用类的成员函数作为API定时器的回调函数
有时候,我们在使用API定时器时,需要使用类的成员函数作为其回调函数,但是,编译器为了保护成员函数,编译是不能通过的。那么我们怎么才能使用类的成员函数作为API定时器的回调函数呢?我们可以嵌入一段汇编代码来绕过编译器的检查。举个例子: 假设我们一个类的成员函数定义为void CALLBACK EXPORT CTestDlg::TimerProc,那么我们在使用API定时器时如果直接这么写原创 2016-07-16 19:57:52 · 2382 阅读 · 0 评论 -
MFC中CPropertySheet与CTabCtrl的使用
一、控件的介绍MFC中封装了许多有用的类,CTabCtrl和CPropertySheet是其中两个比较常用的类型。CTabCtrl即Tab控件对应的类,Windows应用程序中大量使用了Tab控件。属性页对应的是CPropertySheet,你在桌面上右键鼠标弹出的显示对话框就是一个CPropertySheet类型的对象。事实上这类弹出的、类似“属性页”的窗口大部分都是CPropertySheet转载 2016-07-16 19:57:50 · 2165 阅读 · 0 评论 -
MFC中注册热键操作--以CHotKeyCtrl设置热键为例
使用CHotKeyCtrl为程序添加热键功能,进行主界面的显示隐藏,类似于老板键,具体操作如下:第一:获取设置的热键并使用RegisterHotKey进行热键的注册,代码如下://获取热键键值CHotKeyCtrl* photk=(CHotKeyCtrl*)GetDlgItem(IDC_HOTKEY1);WORD vkey,fsmoderfiers;photk->GetHotKey(vkey原创 2016-07-16 19:57:47 · 2029 阅读 · 0 评论 -
VS2008 fatal error LNK1000: Internal error during IncrBuildImage 解决方案
使用Visual Studio 2008编译链接程序的时候,遇到链接错误,错误信息如下:fatal error LNK1000: Internal error during IncrBuildImage一般有如下3中解决方案:第一:该问题仅仅在第一次编译的时候出现,重新编译就可以运行了;第二:去微软官方下载KB948127补丁程序(见附件,但大多数机器安装不上,本人的机器也无法安装);650) t原创 2016-07-16 19:57:44 · 655 阅读 · 0 评论 -
使用CFileFind类查找文件并获取文件图标
以CListCtrl为例,使用CFileFind类查找文件并获取文件的图标填充到CListCtrl中主要代码如下:int CTestDlg::OnInitDialog(void){//获取控件指针CListCtrl* plst_ctl=(CListCtrl*)GetDlgItem(IDC_LIST1);//IDC_LIST1为CListCtrl控件的ID//添加图标(将图标存放在CImag原创 2016-07-16 19:57:41 · 947 阅读 · 0 评论 -
MFC中对于剪切板的简单操作
以ASCII编码的文本为例:复制操作:char sc[]="要复制的文本";HGLOBAL hmem=NULL;if (OpenClipboard()) //是否成功打开剪帖板{ if (EmptyClipboard())//清空成功,则继续 { hmem=GlobalAlloc(GHND,sizeof(sc));//memalloc strlen+1 \0原创 2016-07-16 19:57:39 · 1074 阅读 · 0 评论 -
让MFC程序具有XP风格的按钮及界面
VC++6.0编译生成的MFC程序没有XP风格的界面,显得不是太美观,下面,我们可以采取两种方法来让其显示XP风格的界面。 第一种方法比较简单,只需要一个小小的文件就可以。但是有一个缺点,就是这个文件丢失的话,就会返回到原始的界面。 将以下代码粘贴在文本文件中,然后将扩展名改为你程序名字.exe.manifest(注意,扩展名不是.txt),然后重新编译链接你的程序,是不是变成xp的风格了原创 2016-07-16 19:57:28 · 1553 阅读 · 0 评论 -
字节对齐
计算机的内存空间都是按照字节来划分的,从理论上讲,对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型的数据按照一定的规则在空间上排列,而不是顺序的一个接着一个排列,这就是内存对齐。 内存对齐是为了提高CPU对数据的访问速度(特别是在栈中)。对于对齐的内存地址,处理器仅需一次就可以访问到,而对于未对齐的内存地址,处理器需要访原创 2016-07-16 19:57:22 · 301 阅读 · 0 评论 -
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int 错误的解决方法
一些函数定义中,在VC6中,如果没有显示的指定返回值类型,编译器将其视为默认整型;但是vs2008/vs2010不支持默认整型,解决这个问题不能修改每个没有显示指示返回值类型的函数地方,可以用排除4430来解决;具体的在打开project->BaseClasses properties->configuration->C/C++ ->Advance中禁用特定警告中排除4430即可。 650) t原创 2016-07-16 19:57:19 · 7239 阅读 · 2 评论 -
MFC使用Unicode字符集在网络编程接收数据乱码或不完整的解决办法
VC6.0中默认使用的是多字节编码,而从VS2005以后,默认使用的是Unicode字符编码方式,尤其在VS2013中还取消了对于多字节编码的支持,需要额外安装插件。如果使用多字节编码就不会遇到本文所说的问题,但是用Unicode字符编码方式也是有好处的,除了支持程序主题更美观,更重要的是统一编码标准。这或许就是vs中取消多字节编码的一个原因吧。 好,切入正题。在socket编程中,如原创 2016-07-16 19:58:14 · 2801 阅读 · 0 评论