卸载VS.NET 2010 Beta版会破坏.NET吗?

卸载VS.NET 2010 Beta版会破坏.NET吗?,.net,visual-studio-2010,.net,Visual Studio 2010,我和VS.NET2005一起运行VS.NET2010测试版已经有几个月了。直到昨天下午,我还在用2005来上班 昨晚我卸载了VS.NET 2010,现在我的.NET相关应用都无法工作(VS.NET 2005、SQL Server Management Studio等)。这些产品的安装也不起作用,2.0 SDK或2.0框架的安装也不起作用 它们都因以下错误而失败: (Msgbox title) ngen.exe - Unable to Locate Component This applicati

我和VS.NET2005一起运行VS.NET2010测试版已经有几个月了。直到昨天下午,我还在用2005来上班

昨晚我卸载了VS.NET 2010,现在我的.NET相关应用都无法工作(VS.NET 2005、SQL Server Management Studio等)。这些产品的安装也不起作用,2.0 SDK或2.0框架的安装也不起作用

它们都因以下错误而失败:

(Msgbox title) ngen.exe - Unable to Locate Component
This application has failed to start because MSVCR100.dll was not found.  Re-installing the application may fix the problem.
当然,它不是,因为这是安装


有什么想法吗?谷歌似乎什么都没有。

首先:永远不要在生产机器上安装测试版。改用虚拟PC。吸取的教训


第二:基于前面提到的dll,MSVCR100.dll,我认为您是根据.NET4.0编译的。根据.NET 2.0重新编译你的程序,一切都会好起来。

兰多尔夫一针见血。切勿在生产机器上安装测试版开发工具。始终使用虚拟机或单独的框

从它的声音来看,.NET为2.0、3.0、3.5和4.0注册了新的DLL。您可能需要一个注册表黑客将框架重新定位到正确的位置…检查并报告

更新

在不同文件夹中检查.NET的其余版本

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/.NETFramework/{version}/NGETService/Roots

并确保没有对4.0 DLL的长期引用。

问题已解决。答案是…卸载.NET Framework 4.0。VS.NET卸载没有考虑到这一点,而且显然删除了VC运行时依赖项

不确定您对“生产”的定义,但我可以随时离开我的开发PC,在几个小时内启动并运行另一台。在我的例子中,虚拟机不值得受到性能的影响。实际答案是…卸载.NET Framework 4.0。VS.NET卸载没有考虑到这一点,而且显然删除了VC运行时依赖项。在这种情况下,请注意:在卸载每个.net 4组件的过程中,我得到了大约50个ngen.exe崩溃,但是在忽略它们之后,它完成了正常运行,现在一切似乎都正常运行。