Создание VisualStudio 2008 - PullRequest
       23

Создание VisualStudio 2008

1 голос
/ 10 февраля 2010

Я пытаюсь получить список всех проектов в указанном решении VS2008. (это автономное консольное приложение, это не надстройка Visual Studio)

Мой код работает с решениями VS2005, но я получаю всевозможные уродливые ошибки COM, пытаясь использовать объект VS2008.

Что я имею в виду: Это:

Type _visualStudioType = Type.GetTypeFromProgID("VisualStudio.DTE.8.0");  
DTE _dte = Activator.CreateInstance(_visualStudioType) as DTE;  

работает и это:

Type _visualStudioType = Type.GetTypeFromProgID("VisualStudio.DTE.9.0");  
DTE _dte = Activator.CreateInstance(_visualStudioType) as DTE;  

не (в настоящее время выдает ошибку COM 8001010a)

У меня есть оба соответствующих класса, зарегистрированных в реестре, и ссылки на все соответствующие сборки.


Edit: я пойду с базовым разбором файла .sln, даже если мне придется немного переписать, так как манипулирование текстом обязательно будет работать без всяких неприятных вещей взаимодействия Тем не менее, я не могу найти описание формата .sln, какие-либо ресурсы?

Ответы [ 2 ]

1 голос
/ 10 февраля 2010

Вы получаете ошибку RPC: «сервер занят». Это может быть связано с тем, что Visual Studio на самом деле занята отладкой программы в режиме консоли. За исключением отладки с помощью операторов Console.WriteLine (), попробуйте другой отладчик. Windows SDK содержит отладчики clrdbg.exe и mdbg.exe. .NET 2.0 SDK имел отладчик графического интерфейса iirc.

1 голос
/ 10 февраля 2010

Возможно, вы захотите взглянуть на это: Библиотека для разбора файлов Visual Studio Solution? Если синтаксический анализ .sln напрямую оказывается единственным вариантом.

Что касается вашей текущей проблемы, у некоторых других людей была ваша проблема . KB246018 гласит: проверьте ваш антивирус как главную причину (пример - слово, но то же самое относится и к VS). Попробуйте полностью исключить каталог VS.

...