【发布时间】:2013-02-01 06:40:23
【问题描述】:
过去 3 天我一直在尝试这个,但我仍然无法让它工作。 WINAPI FindResource 函数抛出错误 1813:这意味着找不到资源类型。我正在使用 Eclipse,所以没有 .RC 文件或 resource.h 文件,所以我用LoadLibraryA 加载了我的exe 文件,然后在FindResourceA 中使用了HANDLE。这是我的代码:
HRSRC hRsrc;
HMODULE hExe;
/** Loading resource file in the program */
if (!(hExe = LoadLibraryA(TEXT(filename)))) {
printf("Cannot load resource error: %lu \n", GetLastError());
return 0;
}
printf("Resource file %s is loaded to the program \n", filename);
/** Finding resource */
if (!(hRsrc = FindResourceA(hExe, MAKEINTRESOURCE(10), "EXE"))) {
printf("Cannot find resource error: %lu \n", GetLastError());
return 0;
}
puts("Resource found");
现在,据我了解,MAKEINTRESOURCE(10) 让我们可以定义自定义资源。这是正确的还是我只是弄错了?在资源类型中,我尝试给出“EXE”“BIN”“Exehead”和RT_RCDATA但没有任何效果,它仍然给我和以前一样的错误。网络上的所有解决方案都在Visual Studio 上使用.RC 和resource.h 文件,有什么可以与eclipse 一起使用的吗?谢谢
【问题讨论】:
标签: c++ c winapi embedded-resource