gpt4 book ai didi

c++ - 从 exe 中检索资源文​​件

转载 作者:太空狗 更新时间:2023-10-29 20:48:53 31 4
gpt4 key购买 nike

我正在使用 Visual C++ 2008 包装文件,我已经知道如何嵌入它们,但我不知道如何检索它们。我有一些 C++ 经验,但没有使用 Win32 或 Visual C++ 的经验。包装的目的是运行一些代码,如果一切正常,它就可以运行嵌入的文件。

我包装了许多不同的文件,因此代码重用是关键,而且在所有情况下我都不知道嵌入文件的名称。但我可以将 exe 命名为与包装文件相同的名称,因此如果程序可以获取其自身的名称,那也可以。

一些包装文件将是 exe,而其他文件将由外部程序运行。

编辑:这些文件嵌入了 .res 文件,它们不仅仅是连接到 exe 的末尾。

最佳答案

所以您有一个二进制文件作为资源嵌入到 EXE 中,您想要读取该文件?

尝试这样的事情(非常粗糙,在 MSDN 上查找函数以获得正确的参数):

HRSRC hResource = FindResource(NULL, MAKEINTRESOURCE(id), type);
HGLOBAL hGlobal = LoadResource(NULL, hResource);
BYTE* pData = (BYTE*)LockResource(hGlobal);
int size = SizeofResource(NULL, hResource);
// ... do something with pData and size, eg write to disk ...
FreeResource(hGlobal); // done with data

您需要添加一些错误检查!

关于c++ - 从 exe 中检索资源文​​件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2380332/

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