首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

vs2010调用自定义资源的有关问题

2012-09-18 
vs2010调用自定义资源的问题在vc6.0下用此法可以成功,现在用vs2010有点问题。在Findresource()函数的调用中

vs2010调用自定义资源的问题
在vc6.0下用此法可以成功,现在用vs2010有点问题。
在Findresource()函数的调用中,最后一个参数是字符串,表示资源类型,我在用vc6.0的时候可以先定义一个字符数组
char restype[20]="******";
然后这样调用Findresource()函数:
Findresource(第一个参数,第二个参数,TEXT(restype);
可以成功。
但是在vs2010下就不行,编译器自动把restype变成了Lrestype,这似乎是wchar_t与char之间的区别导致的。
同样的问题也出现在
FILE* fp = _tfopen(_T("demo.exe"), _T("wb"));
这一行中,同样在vc6.0下我可以用字符数组表示文件名,然后这样调用:
FILE* fp = _tfopen(_T(filename), _T("wb"));
但是在vs2010下就不行。

我在网上找了一些char转wchar_t的函数,试过之后都会出现相同的情况:编译、连接都没问题,运行的时候会报错,称引用了没有初始化的wchar_t * 型变量。

请问在vs2010下如何用字符数组作为参数调用Findresource和_tfopen两个函数?

[解决办法]
TEXT,_T L 这3个宏都是用于字符串常量,不能用字符串变量,请参考
http://hi.baidu.com/maimingxiang/item/6868b338217fb7c1392ffae1
希望对你有帮助。

热点排行