【发布时间】:2011-07-16 21:12:15
【问题描述】:
我在 Visual C++ 中创建了一个基本的字符串表资源。我正在尝试访问该资源。但是,我的程序似乎找不到资源。这里:
int main(int argc, char* argv[])
{
HRSRC hRsrc;
hRsrc = FindResource(NULL, MAKEINTRESOURCE(IDS_STRING102), RT_STRING);
if (hRsrc == NULL) {
printf("Not found\n");
} else {
printf("Found\n");
}
}
这个程序找不到资源并且总是返回 null。
我创建了一个简单的位图资源,这个新程序可以很好地识别它。这里:
int main(int argc, char* argv[])
{
HRSRC hRsrc;
hRsrc = FindResource(NULL, MAKEINTRESOURCE(IDB_BITMAP1), RT_BITMAP);
if (hRsrc == NULL) {
printf("Not found\n");
} else {
printf("Found\n");
}
}
这会找到位图。
stringtable 资源的处理方式是否有所不同?
【问题讨论】:
-
Updating a string table with UpdateResource 解释了字符串表是如何实现的。 Win32 LoadString wrapper 提供了一个不需要您了解这些内部结构的解决方案。
标签: c++ string visual-c++ resources