【问题标题】:.NET 4 - win forms app location.NET 4 - 赢得表单应用程序位置
【发布时间】:2011-07-24 18:02:59
【问题描述】:

我现在有几个问题。我想我想为我的应用程序创建一个 .msi。但是,我只能找到如何发布应用程序。

所以我的第一个问题是:如何为我的应用程序分发设置 .MSI?

当我通过发布向导时,我可以设置安装文件所在的位置,但我真的很想设置实际应用程序的位置。

我的第二个问题是:如果我必须使用发布功能,我该如何设置实际程序的安装位置?

仅针对第二个问题的一些上下文 - 用户将能够更改应用程序正在读取的一些文本文件,并且我希望能够将用户引导到正确的位置。我希望有一个简单的位置,而不是一些复杂的 Microsoft 位置。

【问题讨论】:

    标签: .net winforms .net-4.0


    【解决方案1】:

    Q1 - 生成 .msi 包的最简单方法是使用 Visual Studio 2010 安装项目或安装向导(在其他项目类型 -> 安装和部署 -> Visual Studio 安装程序下)。您需要将安装项目添加到您的解决方案中。安装项目应在应用程序安装位置等方面为您提供足够的灵活性。

    Q2 - 在使用 ClickOnce 发布时,您对应用程序安装位置没有太多控制权,这是设计使然。我的建议是编写一些自定义代码,这些代码将在您的应用程序启动时执行,并在所需位置创建/读取文本文件。

    【讨论】:

      【解决方案2】:
      1. 为了创建 MSI,您实际上必须创建一个新项目(新项目 -> 其他项目类型 -> 安装和部署 -> Visual Studio 安装程序)。从这里您可以选择要安装的程序集和其他依赖项。

      2. 使用发布向导时,实际上是在创建 ClickOnce 部署。您无法控制文件的安装位置,这是设计使然。

      我希望有一个简单的位置,而不是一些复杂的 Microsoft 位置。

      错综复杂的微软位置是有充分理由的。用户文件应该放在用户目录中。我们可以假设用户是超级用户并且在任何地方都有写权限的日子已经一去不复返了。将所有应用程序文件保存在安装程序知道的位置也是一种很好的做法,以便可以正确卸载它们。

      【讨论】:

      • 感谢您提供此信息。我同意你的观点。但是,此应用程序将由超级用户使用:)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-12
      • 2016-10-30
      • 1970-01-01
      相关资源
      最近更新 更多