【发布时间】:2020-10-05 01:16:59
【问题描述】:
我编写了一个 c++ 程序,我想在其中执行我的第二个程序,它是一个 exe 文件。问题是我想将我的程序作为一个文件分享给其他人。
当我在互联网上搜索时,我找到了这个解决方案。
只需将第二个 .exe 文件作为二进制资源存储在主文件中 .exe 在编译时使用 .rc 文件。在运行时,您可以访问它 使用
FindResource()、LoadResource()和LockResource(),然后 在将其传递给system()之前,将其写入磁盘上的临时文件。
但我不明白如何“将 .exe 文件存储为二进制资源”
我目前正在使用CreateProcess() 启动我的第二个程序,该程序运行良好。
谁能帮我写一些例子?
【问题讨论】:
-
存储它应该与存储任何其他二进制资源没有什么不同。但是,您可能需要将文件解压缩到硬盘驱动器上的某个位置才能使用它。
-
您在使用 Visual Studio 吗?您的项目中有资源脚本(
.rc文件)吗?你了解如何使用资源编辑器吗?如果我们要适当地提供有用的解决方案,我们需要更多信息。 -
@drescherjm 您好,感谢您的帮助。所以我可以将 .exe 重命名为 .rc?..
-
所以我可以将 .exe 重命名为 .rc 吗? 不可以,但可以在 .rc 文件中添加二进制资源。跨度>
-
@AdrianMole 嗨,我正在使用 Cygwin,因为我在我的程序中使用了一些 Linux 库。我不知道如何使用资源编辑器。
标签: c++ windows cygwin exe embed