.net Visual Studio 2012 可以与 Visual Studio 2010 并排安装吗?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/7425475/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Can Visual Studio 2012 be installed side-by-side w/ Visual Studio 2010?
提问by Chris Pietschmann
Will Visual Studio 2012 interfere/break .NET 4 and/or Visual Studio 2010 if installed side-by-side on the same instance of Windows?
如果在同一 Windows 实例上并排安装,Visual Studio 2012 是否会干扰/破坏 .NET 4 和/或 Visual Studio 2010?
采纳答案by Niklas S?derberg
As Reigo said, yes. Here's the link to the official Microsoft page with the information Reigo provided, and more details: http://msdn.microsoft.com/en-us/library/ms246609%28v=VS.110%29.aspx
正如雷戈所说,是的。这是 Microsoft 官方页面的链接,其中包含 Reigo 提供的信息以及更多详细信息:http: //msdn.microsoft.com/en-us/library/ms246609%28v=VS.110%29.aspx
回答by Vaccano
The .net 4.5 release is an In-place upgrade.
.net 4.5 版本是就地升级。
This means that the binaries for .net 4.0 will be REPLACED by the binaries for .net 4.5.
这意味着.net 4.0 的二进制文件将被 .net 4.5 的二进制文件替换。
Microsoft has attempted to mitigate the problems this causes by making a "Target .net 4.0" feature. But this is very different from the targeting previous versions of .net (which have been side by side since .net 2.0).
Microsoft 已尝试通过制作“Target .net 4.0”功能来缓解由此导致的问题。但这与定位以前版本的 .net(从 .net 2.0 开始并列)有很大不同。
Because it is a in-place upgrade, "Target .net 4.0" cannot really target it. The best they can do is try to manually remove some "features". They have done this (Scott Hanselman had a blog postcovering this).
因为它是就地升级,“Target .net 4.0”不能真正针对它。他们能做的最好的事情就是尝试手动删除一些“功能”。他们已经这样做了(Scott Hanselman 有一篇博客文章介绍了这一点)。
But don't let this fool you into thinking you are really using .net 4.0. Any bugs fixed by .net 4.5 will be fixed on your development machine and not for your .net 4.0 users.
但是不要让这愚弄您认为您真的在使用 .net 4.0。 .net 4.5 修复的任何错误都将在您的开发机器上修复,而不是为您的 .net 4.0 用户修复。
So if you are developing an application "targeting .net 4.0" and you have .net 4.5 installed then you are at risk. If you accidentally use a fixed bug, it will not break for you while debugging.
因此,如果您正在开发“针对 .net 4.0”的应用程序,并且安装了 .net 4.5,那么您就有风险。如果您不小心使用了已修复的错误,则在调试时它不会为您中断。
When you deploy your app to a machine running only .net 4.0 (ie windows xp) then those bugs are not fixed for your user.
当您将应用程序部署到仅运行 .net 4.0(即 windows xp)的机器时,这些错误不会为您的用户修复。
For all intents and purposes, those fixed bugs are now "Hidden Bugs" (for developers that still need to target .net 4.0.
出于所有意图和目的,这些已修复的错误现在是“隐藏的错误”(对于仍然需要面向 .net 4.0 的开发人员。
The best part is that it does not matter if you use VS 2010 or VS 2012. Once .net 4.5 is installed the bugs are hidden.
最好的部分是,无论您使用 VS 2010 还是 VS 2012 都没有关系。一旦安装了 .net 4.5,这些错误就会被隐藏。
See this post for more details: http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c05a8c02-de67-47a9-b4ed-fd8b622a7e4a/
有关更多详细信息,请参阅此帖子:http: //social.msdn.microsoft.com/Forums/en-US/wpf/thread/c05a8c02-de67-47a9-b4ed-fd8b622a7e4a/
回答by Hans Passant
I've been burned badly by VS betas, never not had a nasty problem getting them uninstalled. Microsoft makes fine software but the installer seems to always be the very last thing taken care of. Problems I've seen is the uninstall not removing components that then screws up the retail edition and the installer not counting on other installed Microsoft products and destroying their configuration.
我被 VS 测试版严重烧伤,从来没有遇到过让它们卸载的讨厌问题。微软制作了很好的软件,但安装程序似乎总是最后一件事情。我看到的问题是卸载不删除组件,然后搞砸零售版和安装程序不依赖其他已安装的 Microsoft 产品并破坏其配置。
This one is far before a beta, do notinstall it on a machine you need to get your job done. Which pretty much precludes having VS2008 installed. VM is fine of course.
这一个是远远测试版之前,你并不需要得到你的工作做了一个机器上安装它。这几乎排除了安装 VS2008 的可能性。VM当然没问题。
回答by Orion Edwards
I installed the RC yesterday, and found the following:
我昨天安装了 RC,发现以下内容:
It causes VS2010 to freeze when running unit tests (this can be worked around by using 2012, or mstest on the command line to run your unit tests)
它会导致 VS2010 在运行单元测试时冻结(这可以通过使用 2012 或命令行上的 mstest 来运行单元测试来解决)
It causes VS2010 not to be able to compile C++ projects, failing with a link error. Even after uninstalling VS2012 RC, this problem still persists... so I'd advise strongly against installing it right now
它导致 VS2010 无法编译 C++ 项目,失败并出现链接错误。即使在卸载 VS2012 RC 之后,这个问题仍然存在......所以我强烈建议不要立即安装它
回答by Jenny O'Reilly
So reading all answers, it comes down to this:
所以阅读所有答案,归结为:
- After installing VS2012, .NET 4.5 will overwrite .NET 4.0.
- You can still use VS2010, but it will compile against .NET 4.5 (since .NET 4.0 is replaced).
- Danger:You can no longer safely deploy your projects on machines that run .NET 4.0.
- 安装 VS2012 后,.NET 4.5 将覆盖 .NET 4.0。
- 您仍然可以使用 VS2010,但它将针对 .NET 4.5 进行编译(因为 .NET 4.0 已被替换)。
- 危险:您无法再在运行 .NET 4.0 的计算机上安全地部署您的项目。
回答by Reigo Hein
Yes you can, but its always recommended to install earlier versions first. And if you want to open the Visual Studio 2010 project in VS 11, and then later back again, make sure you don't use Visual Studio 11 new features
是的,您可以,但始终建议先安装早期版本。如果你想在 VS 11 中打开 Visual Studio 2010 项目,然后再回来,请确保你没有使用 Visual Studio 11 的新功能
回答by Rvcl
It can definitely cause problems. For example:
它肯定会导致问题。例如:
In .NET 4.0, whenever one tries to save an enum value in LINQ-2-Entities, jup, you guessed it: ERROR when you have 4.0 GREAT SUCCESS when working on machine with 4.5 installed (yes even though the assembly targets the 4.0 client profile!)
在 .NET 4.0 中,每当有人尝试在 LINQ-2-Entities 中保存枚举值时,您就猜对了:在安装了 4.5 的机器上工作时,如果有 4.0 GREAT SUCCESS 时出错(是的,即使程序集针对 4.0 客户端)轮廓!)
So pay attention when using this good new feature that has no reverse compatibility whatsoever.
所以在使用这个没有任何反向兼容性的好新特性时要注意。
回答by chandrabhan gurjar
It works well on 32-bit machine installing side by side but sometime you can get error but reinstalling or uninstalling previous installation it can be installed. I did it during middle of the project and it do not effect previous work also.
它在并排安装的 32 位机器上运行良好,但有时您可能会遇到错误,但重新安装或卸载以前的安装可以安装它。我是在项目中期完成的,它也不会影响以前的工作。
回答by Dog Ears
回答by Pedro Lamas
I did it yesterday, and uninstalled it today...
昨天做了,今天卸载了。。。
Apparently, something went wrong because some apps that I built before started giving strange errors regarding "unable to load module bla bla bla...", so I uninstalled everything, forced the reinstallation of .NET Framework 4.0 and now all works fine again!
显然,出了点问题,因为我之前构建的一些应用程序开始出现关于“无法加载模块 bla bla bla...”的奇怪错误,所以我卸载了所有内容,强制重新安装 .NET Framework 4.0,现在一切正常!

