我将Visual Studio 2012用于需要(至少).NET Framework 4.0的WPF项目。 我已经安装了4.5,但是使用Windows XP的人无法安装该应用程序(因为4.5不能在Windows XP上运行)。 我使用ClickOnce作为部署应用程序。
当我尝试安装4.0版本时,我收到错误(翻译自荷兰语,因此英文版可能会略有不同):
此计算机上已安装相同或更高版本的.NET Framework 4
我该如何解决这个问题?
答案 0 :(得分:7)
.NET 4.5是CLR的.NET 4.0附加组件,因此,当您安装.NET 4.5时,它包含4.0。 ClickOnce在安装了.NET 4.5的计算机上生成时存在已知问题。
Visual Studio 2012 Update 1应该可以解决此问题。
您可以在Visual Studio中为.NET应用程序设置.NET框架版本。如果要发布与Windows XP兼容的版本,则应始终选择.NET 4或更低版本作为目标框架。
.NET 4.0 Framework应与4.5一起列出。
这是在正常安装的Windows 8计算机Visual Studio 2012 Ultimate上,无需安装任何其他框架或SDK。
答案 1 :(得分:3)
.NET Framework 4.5是就地更新并替换.NET Framework 4.安装.NET Framework 4.5后,无法返回到.NET Framework 4.请注意.NET Framework的主要版本和次要版本4.5装配没有改变。这意味着.NET Framework 4应用程序不会“看到”两者之间的差异,而应该以相同的方式运行。由于您希望在Windows XP上运行应用程序,因此您需要在项目中使用.NET Framework 4。这将确保您的应用程序不使用.NET Framework 4.5中添加的任何新API。执行此操作后,您应该能够在.NET Framework 4和.NET Framework 4.5上运行您的应用程序。请注意,即使兼容性栏非常高(由于.NET Framework 4.5是就地更新),您仍会发现一些细微差别(例如,.NET Framework 4中导致异常的错误可能已在.NET Framework中修复4.5并且不再抛出异常)因此您需要彻底测试.NET Framework 4计算机上的应用程序,因为在.NET Framework 4.5上运行它不会显示某些问题。这样做的原因是,目标确保应用程序不使用之前不存在的API但无法确保运行时的行为,因为在使用.NET Framework 4.5的计算机上它始终使用.NET Framework 4.5运行时(因为没有那里有.NET Framework 4运行时)。
答案 2 :(得分:0)
简单,只需检查控制面板并卸载更高版本并继续安装。