与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换

来源:互联网 发布:可以免费发短信的软件 编辑:程序博客网 时间:2024/04/30 22:02
1error C2440: “=”: 无法从“const char [14]”转换为“LPCWSTR”
1> 与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>不能将参数 2 从“const char [14]”转换为“LPCWSTR”
1>  与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>不能将参数 2 从“char [20]”转换为“LPCWSTR”
1>    与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换

当直接给CString赋值,例如CString str="char",或是直接在函数参数填上"char"等有关于字符串的赋值出现上述错误,可通过以下两种方法解决 


1.在内容前加上TEXT(对变量无效),如MessageBox(hwnd,szChar,TEXT("char"),0);——————


           unicode的问题,把所有字符串都转换成TEXT("")或者 _T("")
           例如,


          abc.lpszClassName="fb2009"; 应该改为


         abc.lpszClassName=_T("fb2009");


             改成这样,还需要包含TCHAR.h头文件。


2.在项目属性->常规中,把Uicode改成多字符段。
  配置属性 -> C/C++ -> 预处理器 -> 预处理器定义   
    看看有没有 UNICODE/_UNICODE, 有的话就去掉, 再看看程序中有没有 define 这些东西
0 0
原创粉丝点击