.net 4.0 为什么Mage.exe不生成compatibleFrameworks属性?

.net 4.0 为什么Mage.exe不生成compatibleFrameworks属性?,.net-4.0,clickonce,mage,.net 4.0,Clickonce,Mage,作为构建过程的一部分,我们正在使用生成应用程序的清单。升级到4后,我们现在发现它生成了一个无效的清单 原因是在我们生成每个构建的应用程序清单中没有设置compatibleFrameworks属性 有没有办法让Mage.exe添加此元素,还是只更新现有清单?将此添加到GenerateDeploymentManifest MSBuild任务中 TargetFrameworkMoniker=".NETFramework,Version=v4.0" 这应该会解决它为.NET4.0

作为构建过程的一部分,我们正在使用生成应用程序的清单。升级到4后,我们现在发现它生成了一个无效的清单

原因是在我们生成每个构建的应用程序清单中没有设置compatibleFrameworks属性


有没有办法让Mage.exe添加此元素,还是只更新现有清单?

将此添加到GenerateDeploymentManifest MSBuild任务中

   TargetFrameworkMoniker=".NETFramework,Version=v4.0"        

这应该会解决它

为.NET4.0构建的
mage.exe
有一个单独的副本。请尝试从
C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\Bin\NETFX 4.0 Tools
(或
…\v7.1\Bin\NETFX 4.0 Tools
)使用此副本,具体取决于您安装的SDK版本)


实际上,我也遇到了同样的问题,使用NETFX 4.0工具中的
mage.exe
为我解决了这个问题。

错误MSB4064:“GenerateDeploymentManifest”任务不支持“TargetFrameworkMoniker”参数。验证任务上是否存在该参数,并且该参数是可设置的公共实例属性。如果出现错误4064,则需要更改以确保ToolsVersion已从3.5更新为4.0。是否已修复此问题?!?!?!?!?!?!我还需要对此进行修复。只需确认确实存在特定于.Net 4的mage.exe(版本4.0.30319.1)。以前的版本是3.5.30729.1,将该版本用于.Net 4应用程序会导致我报告的错误。如果您尝试了mage/mageUI的“所有版本”,但没有成功(正如我所做的那样),那么您可能需要考虑从前面提到的代码调用MSBuild任务