21

在 Expression Blend 4 中,编译时出现错误提示

指定的解决方案配置“Debug|BNB”无效。请使用配置和平台属性(例如 MSBuild.exe Solution.sln /p:Configuration=Debug /p:Platform=”Any CPU”)指定有效的解决方案配置,或将这些属性留空以使用默认解决方案配置。
完成构建项目“myproject.sln”——失败。
构建失败。

4

4 回答 4

40

背景:在构建时,编译器(无论是从 Expression Blend 还是 Visual Studio 启动)都必须知道代码的目标平台,即 X86、64 位等系统架构。

现在的问题是,名为“平台”的环境变量的系统范围设置似乎也覆盖了 Expression Blend 用作目标平台的任何设置。

我在其他网站上找到了一些解决方法,并将在此处提供可能的解决方案。尝试以下两个建议之一应该会有所帮助:

  • 在“控制面板--系统--高级--环境变量”中删除有冲突的环境变量“平台”。重新启动 Blend 并试一试(也许您必须重新启动计算机才能使其正常工作)。
  • 如果这没有帮助:使用注册表编辑器(开始 -- 运行 -- “Regedit.exe”)转到键 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment 并选择键 Platform。删除值 BNB。如果您没有找到指定的键,请尝试将“CurrentControlSet”替换为“ControlSet001”,这也适用于一种情况。然后重新启动计算机。

请评论哪些解决方案有效。

于 2011-04-11T12:31:56.800 回答
4

我刚刚从环境变量中删除了平台,它工作了。

于 2012-10-24T13:49:52.373 回答
0

使用 Microsoft Visual Studio,以下解决方案应该可以在不重新启动计算机的情况下工作。运行命令行(Windows 键 + R,键入cmd,按回车键)并为您的项目键入相应的命令:

微软 2013 年: SET MSBUILD="C:\Program Files Path\MSBuild\12.0\Bin\msbuild.exe"

微软 2015 年: SET MSBUILD="C:\Program Files Path\MSBuild\14.0\Bin\msbuild.exe"

SET SOLUTION="your solution name.sln"
SET PROJECT="your target project name"
SET MS_PLAT="target platform"
; this could be x64 for 64 bit applications or Win32 for 32 bit applications
%MSBUILD% %SOLUTION% /t:%PROJECT% /p:Platform=%MS_PLAT%

对我来说,平台 = BWS。运行上述脚本一旦为我的项目永久解决了该问题,而无需修改或删除 PLATFORM。

于 2016-06-30T19:03:54.530 回答
0

如果仍然无法正常工作,请尝试指定配置和平台

例如

msbuild testproject.sln /p:Configuration=Debug /p:Platform="Any CPU"

这对我有用。

于 2017-12-02T08:28:58.890 回答