【发布时间】:2013-05-03 09:14:06
【问题描述】:
我们有一个 TFS 构建服务器(我认为它在 TFS 术语中称为构建控制器)。它构建和部署了多种解决方案。其中一个解决方案是针对 .NET 4 full profile 和 x86 的 Windows Forms 项目,过去在 Windows XP 上运行良好,但现在无法运行并显示以下消息:
*.exe 在 Windows XP 上不是有效的 win32 应用程序
我们有一个 3 个月前的构建,它运行良好,此后源代码中没有任何相关变化。但是,当现在从构建服务器请求新构建时,生成的 .exe(有很多 .dll 来支持它)无法在 Windows XP 32 位上运行。相同的构建在 Windows 7 32 位和 Windows 7 64 位上运行良好。
我最好的猜测是,过去三个月在构建服务器上安装的某些东西正在发挥作用。已经安装了很多东西,包括 .NET 4.5、Visual Studio 2012 等。不过,它不应该改变针对 4.0 的解决方案。
有什么想法吗?
【问题讨论】:
-
关于构建服务器、C# 和 .NET 的问题如何off-topic on Stack Overflow?投票结束的人显然只阅读问题标题,而不是内容......
-
好吧,不管你怎么想,Hans Passant,这个问题是完全可以重现的。如果我们在构建服务器(或我们的开发机器)上安装 .NET 4.5,生成的 .exe 在 Windows XP 上会失败。即使该解决方案针对 .NET 4,而不是 4.5。如果我们删除 .NET 4.5,生成的 .exe 可以在 Windows XP 上运行。纯粹而简单。
-
我来自 Microsoft .NET Framework 团队。支持使用 .NET4.5 工具集构建 .NET4 应用程序。我刚刚遇到了正在做这件事的大公司。你能把重现问题的重现项目发给我吗?发送到 Microsoft dot com 的 netfx45compat。感谢 Varun Gupta .NET 框架团队
标签: c# .net-4.0 windows-xp .net-4.5 tfsbuild