合并两个exe文件

Combining two exe files

本文关键字:两个 exe 文件 合并      更新时间:2023-10-16

我的问题的一些背景:

我有一个项目在Visual c++ 2006和一个项目在Visual c++ 2010 Express。两者分别编译形成一个exe文件。我不能转换我的2006年项目到2010年,因为我得到了很多"无法加载项目"的错误。我也无法将2010年的项目代码移植到2006年(无论我尝试什么,我总是得到错误,与库有关)。

我的最终解决方案要求我只有一个可执行文件。我能做些什么来实现这个目标吗?我在谷歌上做了一些快速搜索,发现有exe joiners,但我也听说这些东西经常被用来制作恶意软件。

作为参考,我正在使用"虚拟"客户端,因此希望尽可能地简化他们端的事情。因此,让他们执行一个exe比让他们执行两个要好。另外,我不希望他们的防病毒软件因为我使用了一些程序将两个exe连接在一起而变得混乱。做什么?

编辑:

这两个项目文件做不同的事情。例如,VS2006中的项目设置了一个服务器,VS2010中的项目获取用户操作系统的信息。"服务器"的代码,我认为,有很多依赖关系,由于某种原因不能转换为Visual c++ 2010。"抓取"的代码需要一些较新的库和编译选项,如果移植到2006,将无法工作。

我也相信我提到的exe合并只是作为一个"容器",其中它运行两个exe文件一个接一个。

唯一好的解决方案是将最旧的代码(2006)移植到VS2010(或将两个项目移植到较新的编译器),并从一个新的解决方案中编译一个新的可执行文件,其中您可以根据需要组合两个项目。

如前所述,合并两个可执行文件通常没有什么意义(入口点是什么?相互冲突的符号呢?这些二进制文件是由不同的编译器和链接器生成的呢?等)