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,这样就不会有这些问题的存在。 |
|