Моя визуальная студия 10,11 не работает?

Я использую бета-версию VS10 и Vwd11 на своем компьютере. Ни один из них не работает нормально. Когда я запускаю программное обеспечение, у меня возникают разные проблемы.

  1. когда я запускаю VS Express 11, происходит сбой, когда я отлаживаю их, я получаю сообщение об ошибке

    Не удалось преобразовать COM-объект типа «System.__ComObject» в тип интерфейса «Microsoft.VisualStudio.OLE.Interop.IServiceProvider». Эта операция завершилась неудачно, поскольку вызов QueryInterface компонента COM для интерфейса с IID "{6D5140C1-7436-11CE-8034-00AA006009FA}" завершился сбоем из-за следующей ошибки: такой интерфейс не поддерживается (исключение из HRESULT: 0x80004002 (E_NOINTERFACE)) .

  2. Когда я запускаю v10 и устанавливаю любые плагины, это дает мне ту же ошибку. Та же ошибка, которую я получил, когда запускаю SQL Server 2008 r2 в своей системе.

Я не могу использовать ни один из них. Может ли кто-нибудь указать мне, можно ли это решить.


person Chinook    schedule 14.04.2012    source источник


Ответы (1)


Эти проблемы согласуются с тяжелым случаем повреждения реестра. В частности, значение HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32 объявляет прокси/заглушку, необходимую для маршалинга интерфейса. CLSID также может быть перепутан. Или атрибуты безопасности для ключа. Такого рода проблемы действительно будут широко распространены, IServiceProvider — очень распространенный интерфейс в коде Microsoft. Запуск ProcMon от SysInternals должен помочь подтвердить эту диагностику.

Вы можете попытаться восстановить его из файла .reg, который вы создали на хорошей машине, но этот вид повреждения редко ограничивается одним ключом. По крайней мере, сначала следует подумать о ремонте или переустановке компонентов. Кстати, это вряд ли сработает, я полагаю, вы установили VS11 совсем недавно. Удалите любую программу типа «очиститель реестра» с вашего компьютера. Задайте дополнительные вопросы о состоянии реестра на сайте superuser.com.

person Hans Passant    schedule 14.04.2012
comment
Я пытался найти ProxyStubClsid32, но он не найден в интерфейсе {6D5140C1-7436-11CE-8034-00AA006009FA}. @hans, ты можешь исправить это на моем компьютере, чтобы я мог дать тебе более подробную информацию. - person Chinook; 14.04.2012
comment
Да, это в значительной степени то, что говорит вам исключение. Извините, я ремонтирую только мамину машину. Может быть, вы можете найти волонтера в суперпользователе. - person Hans Passant; 14.04.2012