Visual Studio版本选择器无法打开

问题描述:

我将Visual Studio 2008和2010并排安装,但试图打开2008或2010 sln文件不会导致任何结果。小时玻璃开启约一秒钟,然后消失,没有任何东西被打开。Visual Studio版本选择器无法打开

我读了一些地方将sln文件直接关联到VS,但我不能走这条路,因为我不想让2008年的解决方案与2010年打开。有谁知道这个问题可能是什么以及如何解决它?

如果您在启用UAC的情况下运行Vista或Windows 7,并且在Visual Studio exe(devenv.exe)的兼容性选项卡上选中了“以管理员身份运行此程序”,则在尝试时会出现此问题直接从Windows资源管理器打开sln文件。

一种解决办法是去为 “%ProgramFiles%\ Common Files文件\ Microsoft共享\ MSEnv”或(为 “%ProgramFiles(x86)的%\ Common Files文件\ Microsoft共享\ MSEnv” 64位系统)并右键单击VSLauncher.exe并选择属性。在兼容性选项卡上,选中“以管理员身份运行此程序”。现在,当您尝试直接从Windows资源管理器打开sln文件时,您将看到提示提示,并且会为该文件打开正确版本的Visual Studio。

+0

这正是我如何设置我的环境。有没有办法解决这个问题? – 2010-07-29 05:51:35

+0

感谢您编辑的答案! – 2010-08-23 13:02:47

+0

谢谢!我使用这个解决方案来解决我的系统上的问题.vsix不会在我的机器上安装VS 2013和VS 2015.我会双击vsix,它不会执行任何操作。在研究了手动安装vsix文件的方法之后,我找不到方法,然后研究修复这个神奇的“visual studio版本选择器”。我在vsix上找不到这个问题 - 但你的答案解决了它。 – 2015-07-26 18:57:10

显然,“以管理员身份运行”hack在Visual Studio 2010 SP1中不再有效。费边介绍了一种变通方法在这里:

Getting Visual Studio 2010 SP1 to run elevated when launching .sln files

概括起来:

  1. 备份VSLauncher.exe

  2. 从Visual Studio 2010和的工具提示中,提取VSLauncher清单.exe:

mt -inputresource:"VSLauncher.exe" -out:VSLauncher.exe.manifest 
  1. 改变VSLauncher.exe.manifest文件:
  2. <requestedPrivileges> 
         <requestedExecutionLevel level="requireAdministrator" uiAccess="false"> 
         </requestedExecutionLevel> 
        </requestedPrivileges> 
    
    1. 写回清单到VSLauncher.exe:
    2. mt -outputresource:VSLauncher.exe -manifest VSLauncher.exe.manifest 
      
    开始=>
开始=>
+3

这很糟糕,现在修改了文件的签名,Windows不显示已知的发布者提示,而是显示未知的发布者(黄色框)提示。我想这是可以的,因为它的工作原理,我知道我可以信任它。 – 2011-08-09 03:09:01

关于这个问题的真的很烦人的事情是,你必须运行Visual Studio以管理员身份在Windows 7下挂接到IIS实例。当你这样做的时候,他们能做的至少不是破坏.sln文件!

该帖子由Jorge Poveda是正确的,但原来的黑客不再有效,但他的确如此。可能值得一提的是,您必须以管理员身份运行所有工作(命令提示符和文本编辑器)。

我认为还有更好的办法,因为我们的Win 7工作时以管理员身份运行,并没有这个问题。关键区别在于,使用此修复程序时,管理提示会要求您打开VSLauncher.exe,但在我的工作计算机上,它要求打开devenv.exe,因此VSLauncher必须正常才能以某种方式打开VS2010。我会问我们的基础设施人员他们是如何做到的,然后发回。