Как я могу получить путь devenv.exe для установки vspackage? - PullRequest
6 голосов
/ 08 июня 2011

Я следую этому уроку http://msdn.microsoft.com/en-us/library/bb458038.aspx, чтобы создать VsPackage Setup.В части создания класса установщика появляется ссылка на это расположение в реестре «ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Microsoft \ VisualStudio \ 9.0 \ Setup \ VS \ EnvironmentPath», где говорится, что в нем находится местоположение devenv.exe.Я изучаю реестр, и это местоположение не существует.Каково правильное расположение пути devenv.exe?Я использую Visual Studio 2008

Ответы [ 2 ]

8 голосов
/ 15 июня 2011

Я делюсь своим кодом.Это работает для меня.

String path = GetDevenvPath("9.0"); // For VS 2008 
Or
String path = GetDevenvPath("10.0");  For VS 2010

private String GetDevenvPath(String vsVersion)
{
   String vsInstallPath = (String)Registry.GetValue(String.Format("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\{0}", vsVersion), "InstallDir", "");
   return vsInstallPath + "devenv.exe";
}
5 голосов
/ 17 мая 2012

Вам необходимо получить доступ к HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS\EnvironmentPath на 32-битных машинах и HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\9.0\Setup\VS\EnvironmentPath на 64-битных машинах.

Если вы напишите 32-битную программу, которая читает HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS\EnvironmentPath, вы будете автоматически перенаправлены на Wow6432Node на 64-битноймашины под виндой.

...