打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VS2010之各种编译器调试错误自我记录
1.

事件:在非MFC环境中使用CStdioFile时,欲#include<afx.h>,提示链接错误如下

错误 1 error LNK2005: "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z) 已经在 libcpmtd.lib(newaop.obj) 中定义 D:\Code_CSharp\Code_Airport\Code_Airport\uafxcwd.lib(afxmem.obj) Code_Airport

原因:搜了下可能是MFC相关类库与C++的类库include的顺序不对,然后造成某些符号提示重定义。

解决方法:将MFC的相关类库在程序最开始的位置包含。此处,我将<afx.h>放在最开始的位置包含,重编译即成功。

2.

事件:在c#中想调用dll提示如下错误:“无法加载dll  异常来自HRESULT:0X8007007E”

原因:经过百度,了解到应该是我想import的dll还有其他依赖的dll,经过将其依赖的opencvdll打包放一起之后,该错误提示消失。

3.

事件:这是一系列常见错误了,老出现,就是各种windows自带的类型,如“CString,CRect等提示找不到符号”。

原因:其实是stdafx.h没有成功include,修改下就好。

4.

事件:VS2010中设置的断点无效:“当前不会命中断点,还没有为该文档加载任何符号”。

原因:折腾了一阵,其实问题主要出在没有生成调试信息。比较弱的错误是在Release下运行,肯定进不了断点,改成Debug就行;当然非得在Release下设置断点的话,可以通过下面的解决方法来搞。

解决方法:
(1)项目-〉属性-〉配置属性-〉C/C++-〉常规-〉调试信息格式,这里不能为“禁用”。
(2)项目-〉属性-〉配置属性-〉链接器-〉调试-〉生成调试信息,这里设为“是”。

5.

事件:VS2010安装时由于想省时间因此没有装MSDN,现在又想装MSDN。

解决方法:打开VS工作界面,帮助->管理帮助设置,在弹出的选择文件对话框中选择你当前需要将MSDN安装到哪里/路径;选择当前MSDN的案卷源文件,一般在你的ISO文件的ProductDocumentation目录下的HelpContentSetup.msha文件即可,以后程序会自动引导安装;同时,在安装之前,你还可以选择安装哪些帮助文档。

6.

事件:应用程序无法启动,因为应用程序的并行配置不正确。

原因:win7的64位系统缺少x86库文件。

解决方法:安装vcredist_x86

7.

事件:“mt.exe : general error c101008a: Failed to save the updated manifest to the file "./Debug/TransSliderControl.exe.embed.manifest"”vs编译过程中给出如上提示。

解决方法:清理解决方案,再重新生成。

8.

事件:CLR无法从COM 上下文0x645e18 转换为COM上下文0x645f88,这种状态已持续60秒2010-01-20 09:08异常信息:CLR无法从COM 上下文0x645e18 转换为COM上下文0x645f88,这种状态已持续60秒。拥有目标上下文/单元的线程很有可能执行的是非泵式等待或者在不发送 Windows 消息的情况下处理一个运行时间非常长的操作.这种情况通常会影响到性能,甚至可能导致应用程序不响应或者使用的内存随时间不断累积。要避免此问题,所有单线程单元(STA)线程都应使用泵式等待基元(如 CoWaitForMultipleHandles),并在运行时间很长的操作过程中定期发送消息


解决方法: 在Debug -> Exceptions -> Managed Debug Assistants里 去掉ContextSwitchDeadlock一项前面的钩。
在调试(菜单)-->异常--> Managed Debug Assistants里 去掉ContextSwitchDeadlock一项前面的钩。

9.

事件:可访问性不一致: 字段类型“a”比字段“b"的访问性低
解决办法:在你的结构体或者是类,声明一下访问权限,修改成public,这样就不会有这些问题的存在。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Visual C 开发工具与调试技巧整理 - zhangyuanlovelife的专栏 ...
Building MFC application with /MD[d] (CRT dll version)requires MFC shared dll version~~~~
没有找到MSVCR90D.DLL的简单解决方法
在VS2015中用C++创建MFC规则动态库DLL
VC程序在没装VC的机器中运行
(4)C 调试技巧
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服