我有2个程序需要在用户可以使用我的程序之前安装,我想创建一个程序,它将按顺序运行这两个程序。我知道这可以是一个批处理脚本,但我希望安装程序有一个gui,它应该设置一些初始设置,如安装路径等。创建我可以做的程序,我只是不知道如何将这两个程序添加到我的安装程序。最后我只想分发一个安装程序而不是三个安装程序。
如何将两个可执行文件添加到我的安装程序中?
答案 0 :(得分:0)
我个人喜欢NSIS。已经有很多关于如何在一次安装中安装.NET然后安装自己的程序的例子。它有自己的脚本语言,因此不是用C#编写的,但作为使用其他基于MSI的方法的人,NSIS更简单。 MSI是一个巨大的痛苦(但我认为像WIX这样的东西更简单,但是有很多关于MSI的问题)。
甚至可以让NSIS运行一个C#应用程序,在.NET安装应用程序本身之后执行一些额外的安装步骤(或者只是将C#完成安装程序解压缩到临时目录。)
您可以将可执行文件作为资源包含在C#应用程序中,然后将其写出来,但它会更简单,并且可能更快让NSIS打包并为您提取它们,然后您可以做任何您需要做的事情它们在你的C#安装程序中完成。
除了试图解决.NET依赖问题之外,你还会发现自己可能正在做很多NSIS已经介绍过的事情。
答案 1 :(得分:0)
您可以使用WiX ToolSet。它有很多样本。
答案 2 :(得分:0)
如果我理解......您已经准备好并运行了C#安装程序(没有MSI或其他安装程序技术),那么现在需要将这些额外的exe程序添加到该安装程序中吗?
如果是这种情况,您需要将这些程序嵌入为嵌入式资源,然后您可以在安装主程序之前提取它们并按所需顺序执行。
这里有一些关于如何使用二进制嵌入资源的信息:
Embedding an external executable inside a C# program
http://www.cs.nyu.edu/~vs667/articles/embed_executable_tutorial/