我有一段这样的代码
IDB_PNG1 PNG "images\\list-back.png"
HRSRC hrsrc = FindResource(module, MAKEINTRESOURCE(IDB_PNG1), TEXT("PNG"));
这很好用,
但是我不能让它在下面的任何变体中工作
hrsrc = ::FindResource(module, L"images\\list-back.png", L"PNG");
hrsrc = ::FindResource(module, L"images\\list-back", L"PNG");
hrsrc = ::FindResource(module, L"list-back.png", L"PNG");
hrsrc = ::FindResource(module, L"list-back", L"PNG");
GetlastError 返回0x00000716 在图像文件中找不到指定的资源名称。
使用字符串搜索的正确字符串格式/方式是什么?
编辑:将生成.rc 并将包含.html 和.png 文件。我希望能够在不重新编译 exe 的情况下找到并加载该文件。我需要能够以某种方式在 .html 中识别 .png 正在使用什么,在 exe 中我将收到该路径/id 而不是 FindResource 和加载。这可以做到吗?
最佳答案
RCDATA 行中的第一个条目是名称(或 ID)。最后一个条目只是“资源编译器应该使用什么来创建这个条目”——名称没有存储在可执行文件中。
FOO RCDATA "images\\list-back.png"
...
::FindResource(module, L"FOO", RT_RCDATA);
关于c++ - 查找资源失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5807554/