1

我想在我的 Windows 可执行文件中嵌入图像文件。我发现最简单的方法是使用 Windows 资源文件。

我使用 Visual Studio 生成了 resource.rc 和 resource.h。下一步是在我的源代码中调用这些资源。资源文件的幕后究竟发生了什么?

在文本编辑器中打开 .rc 文件会显示资源名称和实际图像文件的路径。在 Visual Studio 中打开资源会显示巨大的字符数组。

这些字符数组存储在哪里?它们是什么时候生成的?

4

1 回答 1

2

秘诀很简单。它基于信息存储在目标文件(如 COFF)和
PE 文件(exe 和 dll)中的方式。这些文件具有用于存储数据的部分 - 其中包括图像和声音文件等二进制数据。资源文件利用了这一点。当您的资源编译器编译您的资源文件时,它只是将二进制文件(图像、声音、图标、电影、动画等)和其他数据(如菜单、对话框、加速器、字符串表)存储在编译的资源文件中并将此文件传递给链接器。然后链接器选择适当的部分将其放置在输出文件中。

于 2014-12-15T01:09:25.213 回答