首页
社区
课程
招聘
[求助]VC6工程向VC9转换遇到问题;
发表于: 2009-1-2 00:37 5664

[求助]VC6工程向VC9转换遇到问题;

2009-1-2 00:37
5664
原来是用VC6写的MFC程序,现在新装了VC9,想向VC9转换,结果出现一些问题;

转换到VC9后,工程属性里指定了使用Unicode字符集;如下代码:

TCHAR Path[MAX_PATH];
GetModuleFileName(NULL, Path, MAX_PATH );
lstrcat(Path, ....);
PathFileExists(Path);

奇怪的是,编译器把TCHAR解释为char, 顺理成章地, 把GetModuleFileName解释为GetModuleFileNameA, 把lstrcat解释为lstrcatA,  可是我明明已经在工程里指定了使用Unicode字符集,结果不知道是什么原因导致VC9无视这个设置;

你别以为编译器会把PathFileExists解释成PathFileExistsA, 编译器却偏偏把PathFileExists解释成Unicode版本的 PathFileExistsW ! 我糊涂了..... 这样,很自然就说这个函数的参数类型不对,编译错误;

不明白其中的奥妙何在,有谁碰到这种情况吗?

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 224
活跃值: (25)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
编译器的设置里面设置了字符集unicode,将VC9的字符集从unicode设置为多字符集就可以了

工程属性--》字符集---》多字符集
2009-1-2 06:45
0
雪    币: 3
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
呵呵, 设置成多字符集当然行;

你看我贴子内容的目的就是想使用Unicode字符集;

算了,我还是用VC9重建一个工程;
2009-1-2 23:35
0
游客
登录 | 注册 方可回帖
返回
//