我的项目与哪些平台兼容?

时间:2010-12-23 05:49:52

标签: visual-studio-2008 .net-3.5 visual-studio-2005 .net-2.0

我早就知道不同的Visual Studio版本为不同的操作系统提供支持。我在2008年创建了一个项目,需要它在XP,Vista和Windows 7中兼容。我现在意识到这可能是一个错误,我可能应该在2003年甚至2005年开发。

问题1:有没有办法让我的项目在XP和Vista中运行?它运行在Windows 7中,但我在Vista中尝试过,它在欢迎屏幕之前崩溃,而且由于XP比Vista早,我猜它也会对XP产生类似的灾难性影响。

问题2:导致版本之间存在差异的原因是什么?为什么我的程序目前仅适用于Windows 7(我知道)?

非常感谢,我已经尝试过对这个问题进行研究,但它已经很分散了,我想你们中有很多人对我的问题有很多了解。

2 个答案:

答案 0 :(得分:3)

为#1尝试一些事项:

  • 如果您使用的是64位平台,change your build target到x86 - 应该在两种架构上运行
  • 你也可以specify the .NET framework version - 2.0是最普遍的,因此最向后兼容。只知道你失去了一些3.0和3.5的好东西
  • 您的项目是否使用Windows 7特有的功能?如果是这样,那么就失去它们。
  • 您部署到的计算机上可能不会自动存在的库的任何其他依赖项?

您没有指定,但我根据您之前的问题猜测您正在使用C#和.NET。

对于#2:这可能是我对#1的故障排除建议的症状。创建64程序集并尝试在32位上运行可能会失败。在具有较旧.NET安装的计算机上使用较新的框架运行可能会失败...

关于这一点的奇怪之处在于,通常对于这种东西存在非常详细的.NET错误。你的症状听起来更像是c / C ++应用程序悄然爆炸...奇怪。

并回答你的标题问题:VS 2008,因为它可以针对.NET 2.0,应该能够在WinXP和2003 Server上运行,而不是太麻烦。我认为即使是配备最新Service Pack的Windows 2000也可以运行.NET 2.0应用程序。

答案 1 :(得分:0)

我猜你在写C ++

您的项目与Visual Studio 2008兼容。如果在您的vista测试计算机上安装VS2008并在本地编译它,它应该在那里运行。

我最深切的遗憾。您正在使用“Windows Extensions”。它们很棒,直到你想要改变一些东西。

我最好的建议是在XP上进行开发,因为Windows向后兼容95。

您可以尝试的一件事是使用(警告级别4)\ W4编译器标志并修复报告的所有问题。 。但是,如果你是我认为你的地方,这将是一个很长的清单。

如果有一个ANSI编译标志我也建议它,但我不相信Visual Studios有一个(因此你的问题)