c ++什么是创建安装程序和处理提取的*聪明*方法

时间:2013-11-29 16:31:55

标签: c++ installer windows-installer installation setup-project

我知道如何创建并编写我自己的安装程序代码,但我需要在某些时候重定向。这一点我也肯定会在其他人身上发挥作用。

我创建了一个安装项目。一切都完成了。除了EXE中的安装文件。

我知道有两种不同的方式:

  1. 在EXE中创建资源并嵌入RAR / ZIP文件。
  2. 将带有文件的压缩存档与EXE一起放入。 EXE将从此受保护和压缩的ZIP中读取内容和数据。
  3. 但我想要的是数字 1 。我想嵌入它。但;

    1. 嵌入此内容的正确方法是什么?其他设置创建者是否做同样的事情?在EXE中将资源作为压缩单个zip压缩?或者他们是另一招?
    2. 如何提取文件?在记忆中飞行?喜欢一个一个地读取每个文件。同步。或者首先,将ZIP复制到temp并从中提取。
    3. 甚至可以将所有文件分别嵌入资源中。
    4. 我,甚至认为如果我应该创建没有对话框的简单MSI并嵌入它并从后台运行但我想采取所有控制。我希望一切都属于我创建的原始设置。

      注意:

        

      我想制作自己的对话框,效果,程序,功能和   脚步。是的,MSI是可以接受的,但我会坚持其功能。哦,   如果我能够扩展它,我为什么要花更多的时间来做这件事   而不是自己做?我很困惑......我在这里谈论非常大的设置项目。不仅仅是标准丑陋的UI,功能更少。至少,我会尝试:)

      请不要给我任何样本/代码请告诉我正确的路径。

      最佳选择:

      1. 创建ZIP兼容的EXE,将自身读取为ZIP并读取文件列表并解压缩。
      2. 创建一个非拉链兼容的EXE,它在某个地方有一个隐藏的主体并读取该区域(搜索)并获取列表&提取。

5 个答案:

答案 0 :(得分:1)

正确的方法是使用Windows安装程序技术,即MSI。有一个很好的微软祝福工具集叫做WiX,你可以用来大大简化这个过程。

http://wix.codeplex.com/

答案 1 :(得分:1)

如果您真的想重新发明轮子,可以查看WiX的源代码,了解事情的完成情况。

答案 2 :(得分:1)

最佳选择:

  1. 创建ZIP兼容的EXE,将自身读取为ZIP并读取文件列表并解压缩。
  2. 创建一个非拉链兼容的EXE,它在某个地方有一个隐藏的主体并读取该区域(搜索)并获取列表&提取物。

答案 3 :(得分:0)

为什么要自己写?更容易使用WiX(http://wixtoolset.org/)和可选的图形界面,如WiXEdit(http://wixedit.sourceforge.net/)。您是否考虑过卸载等其他要求......

祝你好运!

答案 4 :(得分:0)

InnoSetup会帮您解决问题吗?您可以个性化对话框并扩展其功能。