幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4149|回复: 4

[通用编程] VS08 C2664 Cannot convert char* to LPCWSTR

[复制链接]

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
发表于 2010-9-4 19:23:15 | 显示全部楼层 |阅读模式
如题目

MessageBox(NULL,hge->System_GetErrorMessage(),"Error",XXXXX)

"Error" 改成 TEXT("Error")这样就可以了

第二个参数hge->System_GetErrorMessage()该怎么改啊??

或者是有什么别的办法啊?
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复

使用道具 举报

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
发表于 2010-9-4 20:44:32 | 显示全部楼层
1.直接用MessageBoxA。
2.去hge源文件中,把ystem_GetErrorMessage中的关于char的处理全改成wchar的。
3.vc工程不再默认用unicode方式编译。
4.调用winapi如MultiByteToWideChar把ansi转码为unicode。
え~え~お!!!
回复 支持 反对

使用道具 举报

550

主题

9116

帖子

214748万

积分

超级版主

如同神一般的存在,腿神!拖后腿的神~~

Rank: 8Rank: 8

积分
2147483647
 楼主| 发表于 2010-9-4 23:02:55 | 显示全部楼层
谢谢谢谢!
我就是你们的神,庶民们,追随我吧!跟着我一起拖后腿!
回复 支持 反对

使用道具 举报

50

主题

742

帖子

402

积分

版主

自定义头衔

Rank: 7Rank: 7Rank: 7

积分
402
发表于 2010-9-5 08:03:57 | 显示全部楼层
总是晚来一步呢^-^
Style-C
回复 支持 反对

使用道具 举报

24

主题

117

帖子

1274

积分

⑥精研

积分
1274
QQ
发表于 2010-9-27 23:24:15 | 显示全部楼层
在字符串前面加上L 就能把LPSTR变成LPWSTR了
比如 "Hello, world!" => L"Hello, world!"

还有就是VC中的方法一般都有两种
  1. FunctionW();
  2. FunctionA();
  3. #ifdef UNICODE
  4. #define Function() FunctionW()
  5. #else
  6. #define Function() FunctionA()
  7. #endif
复制代码
貌似来晚了,但我这是最直接,也最方便的方法 -_,-
Tamashii是啥意思? 魂! ======================= 我真是败给C++的面向对象了啊……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-3-29 22:08 , Processed in 0.022577 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表