Я пытаюсь получить список всех проектов в пределах указанного решения VS2008. (это автономное консольное приложение, это не дополнение Visual Studio)Создание VisualStudio 2008
Мой код работает с решениями 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, любых ресурсов?
О чем свидетельствует документация VS2008 об этом? – Lazarus
Разбирает файл .sln? Похоже, было бы намного проще. –
Документация утверждает, что это должно работать :) И я хотел бы избежать разбора файла .sln напрямую, потому что это приведет к аннулированию кода 2005 года, который у меня есть (также представим партию новых проблем синтаксического анализа, которые, как я полагаю) – SWeko