【问题标题】:Visual Studio 2013 - Targeting .net 2Visual Studio 2013 - 以 .net 2 为目标
【发布时间】:2013-12-17 10:24:39
【问题描述】:

我为客户端构建了一个非常小的 Windows 窗体应用程序,它只是将 csv 文件格式化为不同的规范。

但是,其中一个用户在一台非常旧的机器上,安装时出现以下错误:

Prerequisite check for system component Microsoft .NET Framework 4.5 (x86 and x64) failed

所以我想我会改变我的应用程序的目标框架并在 .net 2.0 上构建一个版本:

由于我没有声誉,我无法发布图像???,但它表明我的目标框架是 2.0 并且:

<supportedRuntime version="v2.0.50727"/>

在 app.config 中设置

但是,构建和发布仍然会导致相同的安装错误,这让我认为将应用程序创建为 .net 4.5 目标它在某处嵌入了不兼容的代码,导致仍然依赖 4.5?

所以我想我会创建一个新应用并以 2.0 为目标,但是 http://msdn.microsoft.com/en-us/library/bb398202.aspx 说:

In the list at the top of the New Project dialog box, choose the version of the .NET Framework that you want your project to target.

但是,我的 Visual Studio 2013 版本没有这个选项。

所以最后我的问题是,如何让我的应用程序在 vs2013 中的旧版本 .net (2.0) 上运行,还是必须下载旧版本的 Visual Studio?

【问题讨论】:

  • 为什么需要以 2.0 为目标? v4.0 在 XP 和更新版本上运行。
  • 4.0会保证安装,是通过windows update推送的吗?我只是试图尽可能低地定位目标,以尝试覆盖尽可能广泛的场景。
  • 没有任何版本的 .net 框架保证默认安装在 xp 上,所以无论如何你都必须安装它,参考:stackoverflow.com/questions/2438937/…
  • 听起来你有Express版,它不支持多目标。您必须手动编辑项目文件中的 <TargetFramework> 元素。

标签: .net frameworks


【解决方案1】:

我完全忘记了这个问题,刚刚收到了 1000 次浏览的徽章,看来我应该更新了。

正如马特在评论中所说,没有任何版本的 .Net 可以保证安装在 XP 上,而且 Windows XP 不支持 4.5 的事实意味着我需要更改我的框架,然后确保我选择的版本可用在安装我的应用程序的机器上。

.Net兼容性图:http://msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx

切换到 .Net 4.0 后,我为安装我的应用程序的机器启用了框架的自动分发功能。 Microsoft 在此处提供了其工作原理的完整细分:http://support.microsoft.com/kb/324733

这只是确保与您的应用程序一起安装正确的框架(如果它们当前不可用)。

完成此操作后,正确的框架与我的应用程序一起安装在该特定 PC 上,然后应用程序正常运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-28
    • 2020-01-19
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多