无法从const char [6]转换为LPCWSTR
2010-12-06 16:09
260 查看
VS2005默认是Unicode的,在VC 6.0中编译成功的项目在VS2005中常会出现类型错误。
经常出现的错误是:不能从const char *转换为LPCWSTR
如使用CreateDC("DISPLAY",NULL,NULL,NULL)就会报错,如果使用强制转换(LPCWSTR)"DISPLAY",虽然能够通过,但是编码会出错。
可行的办法是使用 TEXT("DISPLAY")转换,
CreateDC(TEXT("DISPLAY"),NULL,NULL,NULL);
另一种方法是:
项目菜单——项目属性(最后一个)——配置属性——常规——项目默认值——字符集,将使用Unicode字符集改为未设置即可。
经常出现的错误是:不能从const char *转换为LPCWSTR
如使用CreateDC("DISPLAY",NULL,NULL,NULL)就会报错,如果使用强制转换(LPCWSTR)"DISPLAY",虽然能够通过,但是编码会出错。
可行的办法是使用 TEXT("DISPLAY")转换,
CreateDC(TEXT("DISPLAY"),NULL,NULL,NULL);
另一种方法是:
项目菜单——项目属性(最后一个)——配置属性——常规——项目默认值——字符集,将使用Unicode字符集改为未设置即可。
相关文章推荐
- 无法从const char [6]转换为LPCWSTR
- VS2013error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”
- 无法从 CONST CHAR 转换为 LPCWSTR
- 错误 1 error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”
- DirectX9.0 VS2010中error C2440: 如无法从“const char [13]”转换为“LPCWSTR” 错误
- error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”
- 无法从const char [6]转换为LPCWSTR
- VS2005 中error C2440: 如无法从“const char [N]”转换为“LPCWSTR”
- 无法从"const char [11]"转换为"LPCWSTR"等问题
- 关于无法从“const char [4]”转换为“LPCWSTR”
- error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”
- [VS2008]无法从“const char [27]”转换为“LPCWSTR”
- 无法将参数 2 从“const char [58]”转换为“LPCWSTR”
- error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”
- error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”
- VS2005 中error C2440: 如无法从“const char [N]”转换为“LPCWSTR” 的一点总结
- error C2440: 如无法从“const char [N]”转换为“LPCWSTR” 的一点总结
- VS2005 中error C2440: 如无法从“const char [N]”转换为“LPCWSTR” 的一点总结
- VS2005 中error C2440: 如无法从“const char [N]”转换为“LPCWSTR” 的一点总结
- 错误 1 error C2440: “=”: 无法从“const char [11]”转换为“LPCWSTR”