我为什么要创建安装项目

时间:2014-06-18 07:22:12

标签: c# windows visual-studio installation

当我在VS创建项目时,我只在我的解决方案中添加一个设置项目(如果它是一项服务(我无法在不先安装它的情况下运行它)。

如果prorgam不是服务我通常不会创建一个设置项目,而是复制.exe文件以及应用程序运行到所需的所有必需dlls文件夹,我从那里运行应用程序。

我的问题是,如果在安装程序时(通过其设置)在性能或其他方面有任何好处,而不是在没有首先安装它的情况下运行它

2 个答案:

答案 0 :(得分:4)

这在很大程度上取决于您的应用程序的需求。例如,你可以:

  • 添加必要的注册表项
  • 注册应用程序的文件扩展名
  • 检查先决条件并(可能)安装缺少的库或框架
  • 检查可能导致应用无法正常工作的潜在问题
  • 允许用户仅选择应用程序提供的功能子集(从而使安装更小)
  • 为特定环境选择二进制文件和库文件(例如32对64位)。例如,NVidia现在为您提供一系列显卡的统一安装程序,然后安装程序选择适当的安装程序。
  • 自动为开始菜单/屏幕和桌面添加快捷方式

您当然可以在应用程序中嵌入大部分这些操作,但我会投反对票。那是因为你的应用程序会有一些样板代码,它只运行一次,甚至你的应用程序可能因为缺少需求而无法启动,而安装应用程序可能已经解决了。

此外,它不太方便用户使用。使用安装程序,用户可以非常快速地准备应用程序以及 - 同样快速 - 从他们的计算机中删除程序(以及所有配置文件,注册表项等)。

如果您打算只自己使用该程序,那么这是您的选择。但是如果你想发布你的程序,我建议你至少选择安装程序或者在便携模式下使用它(没有安装)。

答案 1 :(得分:1)

我认为从最终用户和开发人员的角度来看,设置项目也有好处。通常,当您完成项目时,您希望轻松分发它。最终用户习惯于以通用方式下载和安装应用程序,这意味着:

  • 选择目的地路径
  • 选择是为所有用户安装还是仅为当前用户安装
  • 检查是否创建桌面/程序菜单图标
  • 安装后的程序午餐

这可以通过安装项目轻松完成。

我认为普通用户很难说出来

  • 下载压缩文件
  • 提取包(假设已经适合这样做) 安装。在其他情况下,需要安装它)
  • 创建dektop快捷方式