我正在为C#Winforms应用程序制定部署计划,并希望使用自解压.zip文件来分发所有必需的文件。这是SFX的文件结构:
的Setup.exe
APP.EXE
app2.exe
readme.txt文件
手册.pdf
用户运行SFX后,我希望Setup.exe
获得控制权并将app.exe
,app2.exe
,readme.txt
和manual.pdf
复制到位置{{ 1}}。它们被复制到的路径取决于用户从x
的UI,系统属性等做出的选择。
我如何在C#中编写Setup.exe
?
答案 0 :(得分:3)
就个人而言,我在使用NSIS作为设置工具方面有很好的经验。它比SFX多一点,但使用起来非常好,而且非常灵活且免费。
所以我建议您不在C#中编写自己的SFX(又名“重新发明轮子”),而是使用现实世界证明的东西。
答案 1 :(得分:0)
我同意,当有可用的安装程序时,不要浪费时间编写安装程序。如果你因为某种原因选择自己编写一个,我会鼓励你远离任何需要依赖的语言(例如C#需要.Net Runtime)。我建议使用C或C ++并使用/MT
flag启用静态链接,以便安装程序尽可能少地依赖。
我使用的一些安装软件(按优先顺序排列):
Nullsoft Scriptable Install System (NSIS) - 这是一个免费的脚本安装程序,拥有庞大的用户群,包括Firefox,DOSBox,7-Zip,Winamp甚至Dropbox。
Inno Setup - 这是免费的,项目文件的设置更像是INI文件。总的来说,非常容易使用,但不像NSIS那样功能丰富。有一个名为ISTool的可视化编辑器,可以更轻松地使用它。
Visual Studio Installer / Microsoft Windows Installer - 它附带Visual Studio,它运行良好。它创建了一个MSI安装包。
有关其他选项,请参阅维基百科上的list of installation software文章。