【问题标题】:How can I package the .NET framework with an executable without using an installer?如何在不使用安装程序的情况下将 .NET 框架与可执行文件打包?
【发布时间】:2011-03-31 19:19:50
【问题描述】:

我有一个可执行文件,它显示一个简单的 Windows 窗体。不幸的是,如果用户没有安装 .NET 框架,这个应用程序将不会运行。

我希望能够检测用户的计算机是否安装了 .NET Framework,如果没有,请让他们选择下载并安装它。

我知道这可以通过使用安装程序项目来实现;但是,我实际上并没有安装任何东西,因此安装程序不是一个可行的选择。

有什么办法吗?

如果有任何想法或建议,我将不胜感激。

谢谢,

马蒂姆斯

【问题讨论】:

  • 这是安装程序的工作 - 检测缺失的依赖项并安装它们。
  • 即使只是将一个可执行文件复制到硬盘驱动器,您仍在“安装”某些东西。我知道 Click Once 有其批评者,但在这种情况下,这将是一个快速简便的解决方案。

标签: c# .net windows frameworks


【解决方案1】:

您可以使用 Xenocode 等工具将 .net 的剥离版本嵌入到您的可执行文件中:http://www.xenocode.com

【讨论】:

  • 这是一个很好的答案,但我更喜欢免费的解决方案。
【解决方案2】:

检测计算机是否安装了 .NET 框架的最简单方法是在 Visual Studio 中创建一个非托管 C++ 应用程序。应用程序需要做的就是检查 %SystemRoot%\Microsoft.Net\Framework 目录。这里应该有“v2.0.50727”(用于.NET 2.0 框架)和“v3.0”(用于.NET 3.0 框架)等子目录。检查这些目录是否存在。如果他们这样做,则安装框​​架。

【讨论】:

    【解决方案3】:

    您需要在 .net 以外的其他地方创建“引导程序”应用程序。它会检查 .net,如果找到则启动您的应用程序,否则会提供安装。将您的“桌面快捷方式”或任何指向该应用程序的地方改为。

    对于安装,我会推荐SmallestDotNet,尽管我自己从未使用过。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-29
      • 2016-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多