我有一段这样的代码
IDB_PNG1 PNG "images\\list-back.png"
HRSRC hrsrc = FindResource(module, MAKEINTRESOURCE(IDB_PNG1), TEXT("PNG"));
Run Code Online (Sandbox Code Playgroud)
这很好用,
但我不能让它在下面的任何变体中工作
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");
Run Code Online (Sandbox Code Playgroud)
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);
Run Code Online (Sandbox Code Playgroud)