Поделиться через


Устранение неполадок с VSPackages

Область применения: Visual Studio

В этой статье приводятся распространенные проблемы и советы по устранению неполадок в VSPackages.

VSPackage не запускает Visual Studio

В этом сценарии запустите Visual Studio в безопасном режиме, введя devenv.exe /safemode в командной строке. Во время этого процесса никакие VSPackage не загружаются, кроме VSPackages, включенных в Visual Studio.

VsPackage не загружается

Чтобы устранить эту проблему, попробуйте выполнить одно или несколько следующих действий.

  • Убедитесь, что вы используете корневой каталог реестра, в котором vsPackage зарегистрирован для запуска, обычно экспериментальный корневой каталог реестра. Дополнительные сведения см. в разделе "Экспериментальный экземпляр".

  • Если VSPackage предназначен для запуска в корневом каталоге экспериментального реестра, убедитесь, что вы используете экспериментальную версию Visual Studio.

    Чтобы запустить экспериментальную версию, откройте командную строку Visual Studio и введите devenv /rootuffix exp.

  • Проверьте записи реестра VSPackage. Дополнительные сведения см. в разделе Регистрация VSPackages и управление VSPackages.

  • Откройте окно вывода экземпляра Visual Studio, который не удалось загрузить VSPackage. Сведения о том, почему пакет VSPackage не загружается, может отображаться в этом окне.

    Примечание.

    Если вы запускаете экспериментальную версию Visual Studio из интегрированной среды разработки Visual Studio (IDE), проверьте окно вывода обеих версий.

  • Проверьте журнал действий. Дополнительные сведения см. в разделе "Практическое руководство. Использование журнала действий".

  • Дополнительные сведения об исключениях, создаваемых интегрированной интегрированной среды разработки, выберите исключения в меню отладки , чтобы включить исключения. В диалоговом окне "Исключения" выберите типы исключений, о которых требуется получить дополнительные сведения.

VsPackage не зарегистрирован

Убедитесь, что сборка VSPackage находится в надежном расположении. RegPkg не может регистрировать сборки в ненадежном или частично доверенном расположении, например сетевой ресурс в конфигурации безопасности .NET по умолчанию. Хотя предупреждение появляется всякий раз, когда пользователь создает проект в ненадежном расположении, флажок "Не показывать это сообщение снова " может предотвратить повторение этого предупреждения.

Команда не отображается или возникает ошибка при его выборе.

Чтобы устранить эту проблему, выполните следующие действия.

  • Объедините новые или измененные команды меню и эти команды, уже имеющиеся в интегрированной среде разработки, введя devenv /rootuffix Exp /setup в командной строке Visual Studio.

  • Убедитесь, что Visual Studio может найти UI.dll для VSPackage.

    1. Найдите CLSID VSPackage в разделе "Пакеты" реестра:

      HKLM\Software\Microsoft\Visual Studio\<version>\Packages

    2. Убедитесь, что путь, заданный вложенным ключом SatelliteDll, правильным.

VSPackage ведет себя неожиданно

Чтобы устранить эту проблему, попробуйте выполнить одно или несколько следующих действий.

  • Задайте точки останова в коде.

    Хорошими начальными точками отладки являются конструктор и метод инициализации. Вы также можете задать точки останова в области, которую вы хотите оценить, например команду меню. Чтобы включить точки останова, необходимо запустить под отладчиком.

    1. В меню Проект выберите пункт Свойства.

    2. В диалоговом окне "Страницы свойств" выберите вкладку "Отладка".

    3. В поле аргументов командной строки введите корневую суффикс среды разработки, предназначенную для VSPackage. Например, чтобы выбрать экспериментальную сборку, введите :/RootSuffix Exp.

    4. В меню отладки выберите "Начать отладку" или нажмите клавишу F5.

      Примечание.

      При отладке проекта создайте или загрузите существующий экземпляр проекта.

  • Используйте журнал действий.

    Трассировка поведения VSPackage путем записи сведений в журнал действий в ключевых точках. Этот метод особенно полезен при запуске VSPackage в розничной среде. Дополнительные сведения см. в разделе "Практическое руководство. Использование журнала действий".

  • Используйте открытые символы.

    Чтобы повысить удобочитаемость во время отладки, можно присоединить символы к отладчику:

    1. В меню "Сервис и параметры" перейдите в диалоговое окно "Отладка и символы".
    2. Добавление расположенияhttps://msdl.microsoft.com/download/symbols файла символов (PDB):
    3. Чтобы повысить производительность, укажите папку кэша символов, например C:\symbols.

Отсутствует VSPackage или одна из его зависимостей.

  • Для управляемого кода убедитесь, что пути ссылки верны.

    1. В меню Проект выберите пункт Свойства.

    2. Выберите вкладку "Ссылки" в диалоговом окне "Страницы свойств" и убедитесь, что все пути верны. Кроме того, можно использовать обозреватель объектов для поиска ссылочных объектов.

      Для управляемого кода можно использовать Fuslogvw.exe (средство просмотра журналов привязки сборок) для отображения сведений о неудачных нагрузках сборки.

  • Для неуправляемого кода найдите CLSID VSPackage в узле реестра CLSID Visual Studio:

    HKLM\Software\Microsoft\Visual Studio\<version>\CLSID

    Убедитесь, что запись InprocServer32 имеет правильный путь к библиотеке DLL VSPackage.

Ссылки