【发布时间】:2010-06-04 19:10:49
【问题描述】:
我正在制作一个应用程序,它使用一个单独的程序来解压缩一些文件。如何编译我的 exe 以包含其中的解压缩 exe,以便我只有一个文件而不是两个文件。
【问题讨论】:
标签: vb6 executable
我正在制作一个应用程序,它使用一个单独的程序来解压缩一些文件。如何编译我的 exe 以包含其中的解压缩 exe,以便我只有一个文件而不是两个文件。
【问题讨论】:
标签: vb6 executable
一种可能的解决方案可能是创建一个程序,将您的解压缩 exe 附加到主可执行文件并写入标签或记录解压缩 exe 开始的偏移量。然后在运行时的主可执行文件中,您可以读取数据,将其写入临时文件,然后启动它。我之前已经用图像和声音数据为“可定制”的屏幕保护程序完成了这项工作,它可能也可以在 VB 中完成。
请参阅answer to a similar question,了解如何实现此目的的好算法。
【讨论】:
这实际上很糟糕,最好使用设置。
但是,如果您坚持...您可以使用 IExpress 捆绑您的两个 EXE(自 XP 起包含在 Windows 中,在此之前从 IEAK 获取),并将您的“主程序”设置为“安装程序以启动。 "
这将生成一个 EXE 作为其输出。运行时,它会将打包的文件解压缩到一个临时文件夹中并运行您的“主”EXE。
Start|Run... 并输入 IExpress 以启动向导。
顺便说一句:这也是将 PDW 创建的文件打包成单个安装 EXE 的好方法。
【讨论】:
执行此操作的正常方法是使用包含并安装这两个文件的安装程序。
或者在安装后你真的只需要一个可执行文件吗?如果是这样,我不确定 VB6 是否有简单的解决方案,.Net 框架包含解压缩文件的功能,因此您可能可以使用它,但我认为 VB6 中没有类似的东西。
【讨论】:
使用解压缩库,在编译/链接时将其构建到您的应用程序中,然后部署 exe。 zsharplib 是 .NET 的一种选择。我以前用过vb6解压库,但不记得名字了。
【讨论】: