Visual studio 2008 如何修复Win7 x64上的VS2008和VS2010开发环境

Visual studio 2008 如何修复Win7 x64上的VS2008和VS2010开发环境,visual-studio-2008,visual-studio-2010,virtualbox,windows-7-x64,resgen,Visual Studio 2008,Visual Studio 2010,Virtualbox,Windows 7 X64,Resgen,好吧,我现在处在一个痛苦的世界里 我们一直在使用VS2008 VB.NET进行开发,主要是WinForms,也包括在Win7 x64上的ASP.NET和Windows服务,针对x86和framework 3.5,我们还无法摆脱特定的需求 我们最近升级到了VS2010,很快就遇到了问题。基本上,我们无法用VS2010编译WinForms应用程序。微软或其他人提出的解决方案中,没有一个对我自己或我的团队的其他成员有效 因此,我们尝试使用ie破解解决方案文件所描述的技术,通过创建一个全新的VS2008

好吧,我现在处在一个痛苦的世界里

我们一直在使用VS2008 VB.NET进行开发,主要是WinForms,也包括在Win7 x64上的ASP.NET和Windows服务,针对x86和framework 3.5,我们还无法摆脱特定的需求

我们最近升级到了VS2010,很快就遇到了问题。基本上,我们无法用VS2010编译WinForms应用程序。微软或其他人提出的解决方案中,没有一个对我自己或我的团队的其他成员有效

因此,我们尝试使用ie破解解决方案文件所描述的技术,通过创建一个全新的VS2008解决方案,并向其中添加项目,恢复到VS2008。这在短时间内似乎还不错,但现在我们发现,在调试应用程序时,IDE中不会捕获未处理的异常,这使得开发几乎不可能

使用针对x86和.NET 3.5编译的VS2008创建的全新测试应用程序不会出现捕获异常的故障

现在我不得不求助于在主计算机内的Win32位虚拟机上开发VS2010,它确实可以工作。。。但这太慢了

如果您有任何摆脱困境的想法,我们将不胜感激

更新:

好的,所以这不是一个实际的解决方案,但作为一个解决办法,它不是一个完全的灾难

感谢Noah的评论,这促使我探索各种虚拟化解决方案。我现在发现这里可能是最后一个人了。它不仅在使用上比Microsoft/Windows虚拟PC的各种版本更加流畅,而且还具有无缝模式,在虚拟机上运行的应用程序在主机上显示为单独的窗口。现在我有一个运行VS2010的x86客户机,为x86和Framework3.5编译。由于来宾系统中没有x64/x86冲突,因此没有Resgen.exe问题,并且我的dev envt仅显示为主机桌面上的一个窗口。它仍然比在本地运行要慢,但我现在可以接受它

如果没有任何实际的解决方案,或者微软提供的修复方案,我们将不胜感激

我放弃了

VirtualBox在一段时间内还行,但是VM的速度太慢了,这让我很恼火,而且永远不得不在主机和来宾之间管理移动的东西让我发疯

所以我用Windows7x86重建了整个机器

完全厌恶微软对这个问题的漠不关心,但我想我不是第一个感觉到这一点的人。

我放弃了

VirtualBox在一段时间内还行,但是VM的速度太慢了,这让我很恼火,而且永远不得不在主机和来宾之间管理移动的东西让我发疯

所以我用Windows7x86重建了整个机器


完全厌恶微软对这个问题的漠不关心,但我想我不是第一个感觉到这一点的人。

你可以通过以下方式将ResGen.exe设置为32位: 1.Cd“%ProgramFilesx86%\Microsoft SDK\Windows\v7.0A\Bin” 2.Corflags/32位+/Force ResGen.exe

在此更改之前保存以前的resgen.exe

进行此更改后,您需要修改所有项目,以告知Resgen以32位托管模式运行

将Managed32位添加到任何生成以.NET 3.5为目标的资源的项目的项目文件中的PropertyGroup–由于corflags技巧会在系统范围内影响ResGen.exe的位,因此必须为所有受影响的项目设置该属性

或者,如果直接运行MSBuild.exe,则使用全局属性开关传递它:'/p:ResGenToolArchitecture=Managed32Bit'


解决方案发布在

您只需通过以下方式将ResGen.exe设置为32位: 1.Cd“%ProgramFilesx86%\Microsoft SDK\Windows\v7.0A\Bin” 2.Corflags/32位+/Force ResGen.exe

在此更改之前保存以前的resgen.exe

进行此更改后,您需要修改所有项目,以告知Resgen以32位托管模式运行

将Managed32位添加到任何生成以.NET 3.5为目标的资源的项目的项目文件中的PropertyGroup–由于corflags技巧会在系统范围内影响ResGen.exe的位,因此必须为所有受影响的项目设置该属性

或者,如果直接运行MSBuild.exe,则使用全局属性开关传递它:'/p:ResGenToolArchitecture=Managed32Bit'


解决方案发布在

上,它不是解决您问题的方法,但您可以尝试做一些事情,使VS2010在虚拟机上运行得更快。在“工具”->“选项”->“环境”->“常规”中,确保禁用“启用富客户端视觉体验”和“使用硬件图形加速”(如果可用)。@Noah:谢谢-请参阅我的更新。这并不能解决您的问题,但有几件事可以让VS2010在虚拟机上运行得更快。在“工具”->“选项”->“环境”->“常规”中,确保“启用富客户端视觉体验”和“使用硬件图形加速”(如果可用)处于禁用状态。@Noah:谢谢
-看看我的更新。嗯,是的。我们中的两个人独立尝试了这个变通方法,这在很多地方都有记录。这似乎对我们俩都不起作用。我不排除我们做错了什么的可能性,但正如你在我的回答中看到的,我现在已经恢复到Win7 x86。谢谢你。我很想在某个时候回到x64,所以也许我会尝试一下虚拟机的解决方案。嗯..我遇到了同样的问题,这个解决方案从那以后一直对我有效。是的。我们中的两个人独立尝试了这个变通方法,这在很多地方都有记录。这似乎对我们俩都不起作用。我不排除我们做错了什么的可能性,但正如你在我的回答中看到的,我现在已经恢复到Win7 x86。谢谢你。我很想在某个时候回到x64,所以也许我会尝试一下虚拟机的解决方案。嗯..我遇到了同样的问题,这个解决方案从那以后一直对我有效