win32/mfc/qt 异常处理与总结
际异常一: libcpmtd.lib(xmbtowc.obj) : error LNK2001: unresolved external symbol __CrtDbgReport Debug/B机.exe : fatal error LNK1120: 1 unresolved externals 处理办法: property pages->Configuration Propertyies->C/C++->Code Generation->Runtime Library->Multi-threaded Debug(/MTd)
实际异常二: Error 30 error C3861: 'CryptReleaseContext': identifier not found c:\users\administrator\desktop\mywin32http-dll\common\include\stringprocess.h 472 1 MyWin32Http-dll 处理方法: #define _WIN32_WINNT 0x0502
实际异常三: error C4430: missing type specifier - int assumed. Note: C++ does not support default-int 处理方法: project->BaseClasses properties->configuration->C/C++ ->Command Line,增加/wd4430选项。
实际异常四:
中文乱码,单字节字符(vc6)、Unicode(vc8 vc9 vc10)
处理方法:
property pages->Configuration Propertyies->General->Character Set->Use Multi-Byte Character Set
实际异常五:
VC++ 2008编译错误fatal error C1902问题的解决
处理方法:
将C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\mspdbsrv.exe复制到C:\Program Files\Microsoft Visual Studio 9.0\VC\bin下即可。
实际异常六 :
error LNK2019: unresolved external symbol wWinMain referenced in function wWinMainCRTStartup
处理方法:
1.Linker->Advanced页,将Entry Point由wWinMainCRTStartup改成WinMainCRTStartup
2.Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_CONSOLE, 添加_WINDOWS. 3.Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为Windows(/SUBSYSTEM:WINDOWS)
4.检查是否存在C的引用,如有则加上extern "C"{ }
实际异常七:
处理方法:
在stdafx.h文件最上面加入#define _USE_32BIT_TIME_T
实际异常八:
Run-Time Check Failure #2 - Stack around the variable 'dect' was corrupted.
处理方法:
C/C++->Code Generation->Basic Runtime Checks=Default
实际异常九:
vc2005及以上和6.0的DLL导出函数中有wchar_t, 都无法被对方使用, 必须在vc2005及以上版本中做如下设置
处理方法:
C/C++-->Language->Treat wchar_t as Built-in Type --> No (/Zc:wchar_t-)
实际异常十:
Error 2 error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x0500. Value 0x0501 or higher is recommended. c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\afxcomctl32.h 23 1 XPFace 处理方法
#ifndef WINVER 0x0500 #define _WIN32_WINNT 0x0500 #endif
实际异常十一:
afximpl.h中MENUGETOBJECTINFO、HRAWINPUT找不到而出错。
处理方法:
typedef struct tagMENUGETOBJECTINFO { DWORD dwFlags; UINT uPos; HMENU hmenu; PVOID riid; PVOID pvObj; } MENUGETOBJECTINFO, *PMENUGETOBJECTINFO;
typedef struct HRAWINPUT__ * HRAWINPUT;
实际异常十二:
Error 125 error LNK1104: cannot open file 'LIBC.lib' C:\test\LINK test
处理方法:
Configuration Properties->Linker->Input->Ignore Specific Default Libraries=libc.lib
实际异常十三:x264
Error 220 error LNK2019: unresolved external symbol _strtok_r referenced in function _parse_zones D:\x264\build\win32\libx264.lib(ratecontrol.obj) x264 Error 221 error LNK1120: 1 unresolved externals D:\x264\build\win32\bin\x264.exe 1 1 x264
处理方法:
将\x264\common\osdep.h中#ifdef __WIN32__改为#ifdef WIN32
实际异常十四:
Error 150 error LNK1123: failure during conversion to COFF: file invalid or corrupt C:\video\LINK creenVideo Error 149 error CVT1100: duplicate resource. type:MANIFEST, name:1, language:0x0413 C:\video\CVTRES creenVideo
处理方法:
1. Project propert\ linker\ 启用增量链接:否;(关闭增量链接) 2. 设置工程属性->配置属性-> 清单工具->输入和输出->嵌入清单,选择[否] 3. 在工程的.rc文件里面删除了manifest块. 删除VC6.0外部Manifest文件。设置生成嵌入式清单,并在附加清单依赖项: Microsoft.Windows.Common-Controls。
实际异常十五:
C++调用C函数找不到。
处理方法:
#ifdef __cplusplus
extern "C" {
#endif
int ConvertScreen(int width, int height, const char * src, char * dest);
#ifdef __cplusplus
}
#endif
实际异常十六:
13 IntelliSense: a value of type "void *" cannot be assigned to an entity of type "uint8_t *" s:\test\main.c 749 24 Test
处理方法:
函数体内,变量声明必须在开始处,不得在语句中或之后。
实际异常十七: Error 1 error C3861: 'AtlLoadSystemLibraryUsingFullPath': identifier not found c:\program files\microsoft visual studio 10.0\vc\atlmfc\include\atltransactionmanager.h 312 1 TestMfc
处理方法:
AtlLoadSystemLibraryUsingFullPath改为LoadLibraryW
实际异常十八:
....could not be opened because the microsoft visual C# 2010 compiler could not be created
处理方法:
打开注册表直接删除HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0即可
实际异常十九:
error C2668: 'pow' : ambiguous call to overloaded function
处理方法:
在vs03或者vc6.0里,可以直接写成:pow(i, 2)
在vs05和vs2008中需要改成:pow((double)i, 2),需要给i一个确定的类型。
实际异常二十:
error C1083: Cannot open include file Permission denied
处理方法:
修改引用中路径为正确即可
实际异常二十一:
Compiler Error C2146 syntax error : missing 'token' before identifier 'identifier' 处理方法: 检查是否没有给类型添加相应的引用
实际异常二十二:
Error 89 error MSB6006: "cmd.exe" exited with code 9009. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets 151 6 libx264
处理方法:
安装相应的汇编编译器并复制其主程序到vc\bin文件夹下即可。
实际异常二十三:
Error 1 error C1083: Cannot open include file: 'streams.h': No such file or directory d:\users\administrator\desktop\amcap\stdafx.h 23 1 AmCap 处理方法:
安装DirectX 9.0B SDK,里面有directshow相应的资源,之后版本的sdk,directshow被并到windows platform sdk里去了。
实际异常二十四:
/lib/ld-linux.so.2:bad ELF interpreter:No such file or directory
处理方法:
yum install glibc.i686
实际异常二十五:
Qwt is configured without SVG support
处理方法:
打开qtconfig.pri,把QWT_CONFIG += QwtSvg 屏蔽掉
win32/mfc/qt 异常处理与总结的更多相关文章
- 深入研究 Win32 结构化异常处理(好多相关文章)
摘要 就像人们常说的那样,Win32 结构化异常处理(SEH)是一个操作系统提供的服务.你能找到的所有关于 SEH 的文档讲的都是针对某个特定编译器的.建立在操作系统层之上的封装库.我将从 SEH 的 ...
- 深入研究 Win32 结构化异常处理(作者博客有许多SEH的研究文章)
摘要 就像人们常说的那样,Win32 结构化异常处理(SEH)是一个操作系统提供的服务.你能找到的所有关于 SEH 的文档讲的都是针对某个特定编译器的.建立在操作系统层之上的封装库.我将从 SEH 的 ...
- MFC,QT与WinForm,WPF简介
编程语言的组成编程语言做为一种语言自然和英语这些自然语言有类似的地方.学英语时我们知道要先记26个字母,然后单词及其发音,接下来就是词组,句子.反正简单的说就是记单词,熟悉词法,句法.接下来就是应用了 ...
- vs win32 & MFC 指针默认位置
一开始win32指针所在的位置是与debug文件夹同级的.即打开打开改程序的第一个文件夹这一级. MFC指针是在第二个debug下头,就是打开第二个project名词的文件夹下头,e.g., &quo ...
- Win32/MFC的基本概念
一.MFC的基本概念 单文档.多文档和对话框框架的区别 MFC中的类继承图的基本框架 CView类与CDocument的关系 Onpaint()和Ondraw()的关系 hdc-cdc区别联系 RUN ...
- Win32/MFC/COM学习推荐书籍
以前有不少朋友问关于学习各种技术的推荐书籍的问题,这里把我觉得比较好的一些书籍列一下,希望能起到抛砖引玉的作用就好了:) Win32开发 Programming Windows by Charles ...
- MFC/QT 学习笔记(一)——认识windows基础库
MFC (微软基础类库),Windows系统平台做GUI尚且OK,但不支持跨平台. //Windows消息机制: //1.SDK与API Software Development Kit,为特定软件框 ...
- Win32下 Qt与Lua交互使用(四):在Lua脚本中自由执行Qt类中的函数
话接上篇.通过前几篇博客,我们实现在Lua脚本中执行Qt类中函数的方法,以及在Lua脚本中连接Qt对象的信号与槽. 但是,我们也能发现,如果希望在Lua脚本中执行Qt类的函数,就必须绑定一个真正实现功 ...
- Win32下 Qt与Lua交互使用(三):在Lua脚本中connect Qt 对象
话接上文.笔者为了方便使用Lua,自己编写了一个Lua的类.主要代码如下: QLua.h #ifndef QLUA_H #define QLUA_H // own #include "inc ...
随机推荐
- App开发外包必须注意的四大骗局
在app外包过程中有很多需要注意的事项,今天专门挑选注意事项中的"骗局"这个话题来与大家分享一些的常见骗局及其细节. 无论是从新闻还是身边的朋友,我们都经常可以听见"xx ...
- stop总结
<!DOCTYPE html><html><head><meta charset="utf-8"><script src=&q ...
- Memcached服务安装
安装Memcached服务 memcache分为服务端和客户端程序 服务端程序用来支持存储k-v值,程序名称memcached 客户端与服务端通信,进行存取值(常用的如php的memcache扩展,m ...
- #define宏与const的区别
1.#define宏的用法 #define用宏名代替一个字符串,这样便于修改,提高了程序的可移植性.编译器在编译预处理时只对宏做文本替换,而不进行类型检查,所以替换后可能产生一些副作用. 带参数的宏类 ...
- webstorm 编辑器破解 (麻麻再也不用担心过期了)
先去官网下载webstorm2016.1.3版本(目前只知道2016.1这个版本可以永久破解,不会过期) 再下载webstorm2016.1的破解补丁 将下载好的破解补丁解压,会有一个Jetbrain ...
- MySQL 修改最大连接数
方法一:进入MySQL安装目录 打开MySQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改为 max_connections=1000 服务里重起MySQ ...
- 深入浅出Redis-Spring整合Redis
概述: 在之前的博客中,有提到过Redis 在服务端的一些相关知识,今天主要讲一下Java 整合Redis的相关内容. 下面是Jedis 的相关依赖: <dependency> <g ...
- 同一环境下新建Standby RAC库
需求:在同一个环境下新建Standby RAC库,即和Primary RAC在相同的磁盘组. 说明:生产环境一般不建议这样配置DG,因为存储层面是相同磁盘组,灾备的实际意义不大.我这里是用作读写分离. ...
- Java工程师:四个月小白变大咖,你能做到吗?
你眼中的Java工程师是什么样子? 技术大牛?闷骚男?IT民工?没有女朋友?全是汉子?很邋遢?贼眉鼠眼? 今天,中软国际卓越工程师,Java精英班正式开课啦.你想看看他们都是一群怎样的人吗? 今天的武 ...
- How to build mscorlib.dll with visual studio
Recently, Microsoft Corportation has released a new look for .NET Reference Source. And you may find ...