我有一个文件夹,其中包含一个可执行文件(Exec.exe)和许多 Exec.exe 需要运行的文件。目前,当我只需要运行一个可执行文件时,将所有这些文件都放在那里是非常难看的。有没有办法将它们全部捆绑到另一个运行 Exec.exe 并且还包含 Exec.exe 需要运行的所有文件的可执行文件中?谢谢你的帮助!
2 回答
是的,但我建议您仅在需要时才这样做。
您可以通过将文件作为资源添加到 exe 项目中来实现此目的,因此它们会在编译时添加到 exe 的二进制文件中。然后,您可以使用LoadResource和相关函数在运行时直接从您的 exe 访问文件。如果您正在考虑这条路线,我建议您阅读可移植可执行文件 (PE)文件格式。
如果您(我再次强调)只需要一个二进制文件,您仍然可以访问您的文件,这就是这样做的方法。这样做有明显的缺点,例如访问嵌入在应用程序二进制文件中的数据需要更多的编码,并且如果不重新编译二进制文件以包含新数据。
如果您想要这样做的唯一原因是因为在与您的 exe 相同的目录中看到附加文件“非常难看”,请考虑将它们移动到另一个目录,例如,
从:
MyExeDir
--myExe.exe
--myFile1.txt
--myFile2.dll
--myFile3.dat
至:
MyExeDir
--myExe.exe
--dat
----myFile1.txt
----myFile2.png
----myFile3.dat
或者:
MyExeDir
--bin
----myExe.exe
--dat
----myFile1.txt
----myFile2.png
----myFile3.dat
所以所有看起来“丑陋”的文件都没有了。
为什么不创建“Exec.exe”的快捷方式并将其放在方便的地方?如果你想要什么?
或者,如果您想分发您的应用程序,您可以使用 Winrar/Winzip(最好是 winrar)创建整个文件夹的压缩 .exe,将“Exec.exe”作为您的启动应用程序。在 winrar 中使用 SFX 选项。