关于Microsoft Visual Studio 2010 的常见错误的分析一
2013-09-28 22:39
441 查看
问题一、MessageBox在VS2010怎么用?一直提示error c2664:
"MessageBoxW”: 不能将参数 2 从“const char [9]”转换为“LPCWST"
解答:这个问题应该是环境设置成使用unicode字符集(wide char)了(在项目->"项目名"+属性->配置->配置属性->常规->字符集)。
可以改为:
MessageBox(0,L"Hello C++",L"提示",0);
比较好的做法是用TEXT或者_T宏,边可以与单字符集或者unicode字符集环境兼容了,写成下面形式:
MessageBox(0,TEXT("Hello C++"),TEXT("提示"),0);
或者:MessageBox(0,_T("Hello C++"),_T("提示"),0);
如果不习惯还可以改默认编码,解决方案上单击右键属性->配置属性->常规->字符集->多字节字符集
以上是我在网上找到的答案,但是这些方法我尝试后,都可以
但是针对只有一个参数的时候就不行,例如:
MessageBox(_T("Hello C++"));
出错:error C2660: “MessageBoxA”: 函数不接受 1 个参数
这里我推荐这种方法:
在VC2010中
AfxMessageBox("Hello C++");
或改为MessageBox(0,_T("Hello C++"),0,0);
在这里要探究深层的原因,到底是什么导致了原来在其他版本的VC上可以运行,在VC2010中却出错呢?
我认为应该是函数的重载
相关文章推荐
- Microsoft Visual Studio 2010编译生成总出现exe写入错误
- Microsoft Visual Studio 2010 加载包错误的解决方法
- 分析数据包(Microsoft Visual Studio 2010)
- 关于Microsoft Visual Studio 2010 使用 APP GAME KIT中遇到的问题
- [备忘]Win7 64位安装VS2010出现错误failed for component Microsoft Visual Studio 2010 64bit Prerequisites (x64)解决办法
- [备忘]Win7 64位安装VS2010出现错误failed for component Microsoft Visual Studio 2010 64bit Prerequisites (x64)解决办法
- [原] 安装VS2010出现Microsoft Visual Studio 2010 64bit Prerequisites (x64)错误
- 在使用Microsoft Visual Studio Test Controller 2010进行测试时,报如下错误: System.DllNotFoundException: 无法加载 DLL“Microsoft.VisualStudio.QualityTools.RecorderBarBHO100.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。
- 编译错误:microsoft visual studio 9.0\vc\include\cstdio(42) : error C2059: syntax error : ':'
- 立即注册Microsoft Visual Studio 2010全球发布会,抢VIP席位,赢取限量礼品!
- Web Standards Update for Microsoft Visual Studio 2010 SP1
- VS2010安装失败Microsoft Visual Studio 2010 Ultimate - CHS.......
- 发送arp欺骗报文(Microsoft Visual Studio 2010)
- #error : Xiron Platform Abstraction Layer - Win32 - Microsoft Visual Studio versions above 2010 (10.0) are not supported! 解决方案
- 关于Microsoft Visual Studio已停止工作的问题
- vs2010 Microsoft Visual Studio 无法加载 DLL“UIAutomationCore.dll”: 找不到指定的程序。 (异常来自 HRESULT:0x8007007F) 错误处理方式
- 2010年4月12日 Microsoft Visual Studio 2010 全球首发
- 错误信息: 未能从程序集“Microsoft.VisualStudio.DataDesign.SyncDesigner.DslPackage, Version=9.0.0.0, Culture=neu
- 尚未重新应用microsoft visual studio 2010 service pack 1 :系统无法找到指定的对象
- Microsoft Visual Studio 2010 Service Pack 1(exe)