gpt4 book ai didi

c++ - 如何获取资源文件中的数据?

转载 作者:行者123 更新时间:2023-12-05 05:51:11 24 4
gpt4 key购买 nike

我在运行时得到 NULL(hRsrc)。

.cpp

HINSTANCE hInstance = AfxGetInstanceHandle();

HRSRC hRsrc = FindResource(hInstance, MAKEINTRESOURCE(IDR_EXE1), _T("EXE"));

if (hRsrc == NULL) {
MessageBox(NULL, TEXT("LoadEmbedded"), TEXT("1"), MB_OK);
}

HANDLE hRes = LoadResource(hInstance, hRsrc);
if (hRes == NULL) {
MessageBox(NULL, TEXT("LoadEmbedded"), TEXT("2"), MB_OK);
}

LPSTR lpRes = (LPSTR)LockResource(hRes);
if (lpRes == NULL) {
MessageBox(NULL, TEXT("LoadEmbedded"), TEXT("3"), MB_OK);
}

.rc

IDR_EXE1                EXE                     "crashpad_handler.exe"

我设置数据 id 和类型。

资源.h

#define IDR_EXE1                        105

最佳答案

.rc 文件是否有#include "resource.h" 语句?

如果不是,则在编译.rc 时不会定义IDR_EXE1 宏,因此资源的ID 将是文字字符串"IDR_EXE1" 而不是数字 105(使用资源查看器工具来验证)。在这种情况下,您必须在调用 FindResource() 时使用 _T("IDR_EXE1") 而不是 MAKEINTRESOURCE(IDR_EXE1):

HRSRC hRsrc = FindResource(hInstance, _T("IDR_EXE1"), _T("EXE"));

否则,修复.rc文件:

#include "resource.h" // <-- add this!

IDR_EXE1 EXE "crashpad_handler.exe"

关于c++ - 如何获取资源文件中的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70429993/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com