代码之家  ›  专栏  ›  技术社区  ›  Joseph

有没有办法要求.NET 3.5 SP1作为ClickOnce应用程序的先决条件?

  •  2
  • Joseph  · 技术社区  · 16 年前

    我有一个ClickOnce应用程序,除非客户端机器有.NET3.5SP1,否则它不会运行。在故事板上调用Stop()时,我正在运行它,它会崩溃。在我的客户机虚拟机上安装SP1后,一切都正常工作。

    有什么想法吗?

    我已经检查了“先决条件”对话框,但它肯定不在那里。我在Win 7 box(64位)上运行VS 2008。

    3 回复  |  直到 16 年前
        1
  •  4
  •   Nestor    16 年前

    转到属性/发布/先决条件,然后单击“.NET Framework 3.5 SP1”(而不是“.NET Framework 3.5”)

        2
  •  0
  •   Nilzor    15 年前

    您需要将.NET 3.5 SP1的引导程序包放在Windows SDK引导程序包文件夹中。对于Windows 7上的VS2008(我的设置),这是:

    C:\ProgramFiles(x86)\Microsoft SDK\Windows\v6.0A\Bootstrapper\Packages

    此文件夹最初在我的计算机上只有名为DotNetFX35的子文件夹,该子文件夹用于.NET FrameWork 3.5 RTM(不是SP1)。我需要DotNetFX35SP1,并在(…)\Windows\v7.0A下找到了它。我认为v7.0A是随VisualStudio2010一起安装的,但我对此不确定。在任何情况下,我已经在我的博客网站上提供了引导文件,地址如下:

    http://posts.nilzorblog.com/stackoverflow/DotNetFX35SP1.zip

    只需在(…)\Packages下的名为DotNetFX35SP1的文件夹中下载并解压缩此包,然后重新启动Visual Studio 2008,您就可以开始了!

        3
  •  0
  •   Peter Mortensen Pieter Jan Bonestroo    13 年前

    出于这个原因(以及其他原因),我不会给我的最终用户 ClickOnce 安装位置。相反,我将它们发送到一个页面/站点,在允许它们安装应用程序之前,该页面/站点会在其PC上运行各种检查(.NET Framework级别就是这样一种检查)。

    HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 用于“版本”,并在应用程序启动时将其与3.5.30729.01进行比较。