VS2008/2005 MFC程序调试经验
我的VS2008不知道是有bug还是自己的问题,很多时候变量定义后CTRL+F5运行却没反应,一定要“生成解决方案”下才行?
1、没有可用于当前位置的源代码
将工具->选项->调试->常规->去掉“要求源文件与原始版本完全匹配”复选框就OK
在解决方案资源管理器中右击解决方案->属性->通用属性->调试源文件。在不查找这些源文件对话框中查看是否有你想要调试的源文件,如果有就删除这一行,保存。
2、已触发了一个断点
VS2008再出怪现象:已触发了一个断点!!很是悲催:程序完全正常,在拖进来的List Control空间中右击添加control变量CListCtrl m_ctrListServerConnect;调试无奈的提示:已触发了一个断点,调试都无法进行,寻找答案无果,把m_ctrListServerConnect;涉及到的地方全部屏蔽,m_ctrListServerConnect;加了个s重新自己写了一遍,问题解决。
3、不能将参数 1 从“const char [10]”转换为“const wchar_t *”
CString str;
str.Format("Amount Remaining $ %.2f", m_Amt_Remaining);),
上VC6中上述代码没有问题,但在Visual stdio 2008中编译中有错误:
错误提示:
error C2664: “void ATL::CStringT::Format(const wchar_t *,...)”:不能将参数 1 从“const char [10]”转换为“const wchar_t *”
VS2008默认是UNICODE环境(当然你可以在项目属性中改成使用多字节字符集就可以啦)
所以把你所有字符串相关的操作都用_T() TEXT() 包含起来
str.Format(_T("Amount Remaining $%.2f",m_Amt_Remaining));
4、LINK : fatal error LNK1000: Internal error during IncrBuildImage
用下面的方法手工来改工程设置
项目(Project)->属性(Property)->链接器(Linker)->常规(General) 下面的“启用增量链接(Enable Incremental Linking)”,将“是(/INCREMENTAL)”改为“否(/INCREMENTAL:NO)”。不过这又引入了另外一个警 告:FormatCom.obj : warning LNK4075: 忽略“/EDITANDCONTINUE”(由于“/INCREMENTAL:NO”规范)
选择项目,属性(Property pages)->配置属性(Configuration Properties) ->C/C++,修改“调试信息格式(Debug Information Format)”为“程序数据库(Program Database(/Zi))”即可。
参考资料:http://blog.csdn.net/xiangyunl/archive/2010/08/22/5830481.aspx
5、fatal error C1083: 无法打开包括文件:“afxcontrolbars.h”: No such file or directory!!
把#include <afxcontrolbars.h> 注掉,后面加一行
#define CWinAppEx CWinApp:
也即是如下的修改:
//#include <afxcontrolbars.h> // MFC support for ribbons and control bars
#define CWinAppEx CWinApp
6、VC6.0向VS2008转换时出现的问题:消息映射:VS2008中消息映射的方法必须有返回类型,当然不一定是LRESULT
error C2440: 'static_cast' : cannot convert from 'void (__thiscall CSongserverView::* )(WPARAM,LPARAM)' to 'LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)'
应该是VC6项目迁移向高版本时发生的,VC6后消息的检查更为严格,以前在VC6下完全正常运行的消息映射在其它版本下编译不通过。 解决方法如下:
首先,把原来的消息函数返回值类型改为LRESULT,函数内可以随便写个return TRUE; 然后消息函数的参数必须改写成(WPARAM wParam,LPARAM lParam)而不论这两个参数是否用得到;最后,消息映射如ON_MESSAGE(WM_message,& OnMyMessage)
7、SQL Server2005 只有配置工具,而没有查询分析器、企业管理器的解决方法
其实只需要下载个Microsoft SQL Server Management Studio Express(SSMSE)
如果上述方法仍然不管用,那就很可能是下列原因了:
SQL server 2005 的不同版本需要操作系统也要相应的版本.
在运行的地方输入:SqlWb.exe或程序/sql server 2005/SQL Server Management Studio(注意:请确保已经安装Microsoft SQL Server Management Studio Express(SSMSE))
安装的时候注意实例名不要与现有实例重复
转自:http://blog.csdn.net/xintianyou_/article/details/7045712
8、IE8正式版引发VS2005和VS2008添加变量向导出错的解决方案(MFC当前页发生脚本错误!!!)
运行命令:regedit,调出注册表定准:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings\Zones找到1000的项,如果不存在1000这一项的话,首先添加;在此项(1000)中添加一个DWORD值名称为1207,类型为REG_DWORD,数据为0x00000000,也就是0了.重新打开VS2005/2008
VS2008/2005 MFC程序调试经验的更多相关文章
- VS2008执行MFC程序,提示microsoft incremental linker已停止工作解决方法
事实上这边是由于设置有问题.详细的解决方式例如以下: 第一步:点击项目->"你的文件"属性->配置属性->链接器->启用增量链接 将 是(/INCRE ...
- VS2008编写MFC程序--使用opencv2.4()
开始记录VS2008环境下学习OPENCV2.4 头文件: #pragma once #include "CvvImage.h" #include "opencv/cv. ...
- MFC程序中使用调试宏ASSERT()、ASSERT_VALID()、VERIFY()和TRACE()的区别
其实这篇文章说的很明白了:http://dev.gameres.com/Program/Other/DebugMacro.htm 结论如下: 1.ASSERT()测试它的参数,若参数为0,则中断执行并 ...
- 程序异常崩溃后用windbg辅助调试解决的经验 以及 堆栈问题调试经验
1,程序异常崩溃后用windbg辅助调试解决的经验 状况:我的程序调用别人的库做 文件写入工作. 在这一过程中出现异常,程序崩溃. 经反复检查,认为自己的程序没有错,但无法判断在别人库里哪里有错. ...
- 【matlab】MATLAB程序调试方法和过程
3.8 MATLAB程序的调试和优化 在MATLAB的程序调试过程中,不仅要求程序能够满足设计者的设计需求,而且还要求程序调试能够优化程序的性能,这样使得程序调试有时比程序设计更为复杂.MATLAB ...
- .NET应用程序调试—原理、工具、方法
阅读目录: 1.背景介绍 2.基本原理(Windows调试工具箱..NET调试扩展SOS.DLL.SOSEX.DLL) 2.1.Windows调试工具箱 2.2..NET调试扩展包,SOS.DLL.S ...
- VS 2008 创建MFC程序对话框的步骤
用过不少编程语言,可是刚开始学的时候最容易忘记一些简单的流程或者生疏了.那么这里就说说VS 2008 创建MFC程序对话框的步骤.我主要是android开发方面的.平时使用jni调用不少c++代码.所 ...
- cmake编译dcmtk,并利用vs2010 进行开发mfc 程序
这几天要处理 医学图像数据,经同学推荐 采用 dcmtk 关于 编译 dcmtk 是可参考如下blog 1. http://blog.csdn.net/okaimee/article/details/ ...
- 【转】MFC中调试过程中查看输出信息 -- 不错
原文网址:http://blog.sina.com.cn/s/blog_4e24d9c501014o39.html 笔记&&方便查阅. ~~~~~~~~~~~~~~~~~~~~~~~~ ...
随机推荐
- 版本控制工具Git工具快速入门-Linux篇
版本控制工具Git工具快速入门-Linux篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.版本管理系统的介绍 1>.版本管理系统的特点 1.1>.自动生成备份: ...
- JavaSE学习总结(六)——接口、抽象类、内部类
一.不需要实例化的原因 看一个示例: package com.zhangguo.chapter5.s1; /**动物园*/ public class Zoo { public static void ...
- Python基础(函数部分)-day04
写在前面 上课第四天,打卡: 加勒比海盗今天上映:端午节公司发的粽子很有范! 一.函数的基本概念 - 函数是什么? 函数,就是一个'锤子',一个具有特定功能的'锤子',使用者可以在适当的时候使用这个 ...
- IDA Pro使用技巧
DA Pro基本简介 IDA加载完程序后,3个立即可见的窗口分别为IDA-View,Named,和消息输出窗口(output Window). IDA图形视图会有执行流,Yes箭头默认为绿色,No箭头 ...
- tarjan,树剖,倍增求lca
1.tarjan求lca 思想: void tarjan(int u,int f){ for(int i=---){//枚举边 if(v==f) continue; dfs(v); //继续搜 uni ...
- pyqt5-多线程QThread类
要实现多线程,我们要先继承QThread类并重新实现其中的run()函数,也就是说把耗时的操作放入run()函数中 import sys from PyQt5.QtCore import Qt, QT ...
- linux查看防火墙的状态以及开启关闭
存在以下两种方式: 一.service方式 查看防火墙状态: [root@centos6 ~]# service iptables status 开启防火墙: [root@centos6 ~]# se ...
- ubuntu12.04+cuda6.0+caffe(新版)的安装
参照两位的博客 http://caffe.berkeleyvision.org/ 官网 http://blog.csdn.net/u013476464/article/details/38071 ...
- FPN-Feature Pyramid Networks for Object Detection
FPN-Feature Pyramid Networks for Object Detection 标签(空格分隔): 深度学习 目标检测 这次学习的论文是FPN,是关于解决多尺度问题的一篇论文.记录 ...
- layer弹出层的iframe页面回调
$("#ChoiceBank").click(function () { var width = $("#content").css("Width&q ...