【问题标题】:Building C++ CLR app for Platform Toolset v90 in VS2010 requires Visual Studio 2008在 VS2010 中为 Platform Toolset v90 构建 C++ CLR 应用程序需要 Visual Studio 2008
【发布时间】:2011-03-21 03:31:23
【问题描述】:

我有一台闪亮的新笔记本电脑,安装了最新的开发工具,例如 Visual Studio 2010。

现在我的任务是构建一个面向 2.0 运行时的 C++ CLR 应用程序(这远远超出了我的舒适范围)。所以我指定了 v90 平台工具集,但是当我构建时,我得到:-

错误 MSB8010:指定的平台工具集 (v90) 需要 Visual Studio 2008。请确保计算机上已安装 Visual Studio 2008。

说真的,我真的需要安装 2008 吗?有没有办法解决这个问题,比如只是从 2008 年安装的一些文件夹中复制?

如果不是我需要多少 VS 2008 安装?

【问题讨论】:

标签: c++ visual-studio visual-studio-2008 visual-c++ visual-studio-2010


【解决方案1】:

部分问题在于 VS2010 重新设计了在 c++(cli 与否)中编译的工作方式。它现在使用 MSBuild 结构,但我相信您正在尝试做的将需要 2010 年没有的 VCBuild 框架。

您也许可以使用 Visual Studio 2008 express 来构建。如果没有,你应该只需要 VS2008 的 c++ 部分。

您需要使用 vc90 目标吗?我用 vc10 目标构建了我的 c++/cli(我自己还是新的),它构建得很好。 (但是我的目标是引用一些 2.0 部分的 4.0 框架)

【讨论】:

  • 生成的dll需要在现有的2.0运行环境中运行。
【解决方案2】:

如果您在项目设置的常规选项卡中将“平台工具集”设置为“从父级或项目默认值继承”,则它在大多数情况下都可以使用。

【讨论】:

    【解决方案3】:

    在 *.vcxproj 中

    <PropertyGroup Label="Globals"> //全局
    <ProjectGuid>{E0047D4D-366D-4870-980B-DBB5A375BCE2}</ProjectGuid>
    <RootNamespace>ECGConvertWrapper</RootNamespace>
    <Keyword>Win32Proj</Keyword>
    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion> //那里
    </PropertyGroup>

    【讨论】:

      猜你喜欢
      • 2019-07-04
      • 2014-03-01
      • 1970-01-01
      • 2016-10-09
      • 2020-03-04
      • 2015-07-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多