Как повторно добавить удаленную надстройку VSTO - PullRequest
4 голосов
/ 20 мая 2019

У меня странная проблема с надстройкой Word VSTO на одном компьютере, когда запуск проекта Visual Studio открывает слово, но, насколько я могу судить, не пытается запустить надстройку.

Я пришел к этому моменту, потому что случайно нажал «Удалить» для надстройки на странице «Управление надстройками COM» вместо того, чтобы снова включить ее после сбоя.

Я хочу знать, как повторно включить удаленную надстройку - я думаю, что, возможно, где-то есть раздел реестра, от которого мне нужно избавиться.

  • Когда я запускаю проект из Visual Studio, он не пытается запускается вообще, Word запускается мгновенно без каких-либо ошибок типа пауза.
  • В ThisAddIn_Startup нет точек останова.
  • В Word: Файл / Параметры / Надстройки - надстройка не отображается в разделе Неактивные или Отключенные надстройки
  • Word: управление надстройками COM Перейти ... не отображается.
  • Слово: Управление отключенными объектами Перейти ... пусто.

Я попытался установить и удалить опубликованную версию, чтобы посмотреть, просыпается ли это, и я попытался изменить путь к проекту VS, на всякий случай, если это имеет значение (и различные перезапуски, очистки, перестройки локальное удаление и повторное клонирование из git и т. д.), но я не могу найти способ заставить это работать снова. На другом компьютере клонируйте надстройку из Git и откройте ее в Visual Studio, и все в порядке.

Я попытался повторно добавить через диалог выбора DLL (или выберите . ) надстройки COM, но ничего, что я выбрал, не выглядит как допустимая надстройка.

Буду признателен за любую помощь, чтобы выяснить, как вернуться в рабочую среду разработки.

EDIT Ниже многое происходит, поэтому я решил уточнить, что успешным решением стал онлайн-ремонт Office

Ответы [ 3 ]

1 голос
/ 03 июня 2019

Я считаю, что вам нужно изменить версию надстройки VSTO, чтобы иметь возможность обновить или переустановить ее.Как только версия надстройки отключена, она становится постоянной.

Подробнее см. Удаление надстройки MS Word .Дайте мне знать, если это сработало.

1 голос
/ 05 июня 2019

Что такое LoadBehaviour в реестре? Это должно быть 3 ...

Чтобы узнать, посмотрите в

  • 32bit Word => Root \ Software \ Microsoft \ Office \ Word \ Addins \ ID надстройки
  • 64bit Word => Root \ Software \ Wow6432Node \ Microsoft \ Office \ Word \ Addins \ ID надстройки

где Root - HKEY_CURRENT_USER или HKEY_LOCAL_MACHINE , в зависимости от того, установлено ли дополнение для текущего пользователя или для всех.

Если значение для LoadBehaviour не равно 3, измените его на 3 и перезапустите Word.

Вот документы Microsoft об этом: Записи реестра для надстроек VSTO

Если это по-прежнему не работает, попробуйте включить его, так как это может быть аппаратно отключено :

  • В поле Управление измените Надстройки COM на Отключенные надстройки и нажмите Перейти .
  • Выберите надстройку и нажмите Включить . Нажмите Закрыть . Теперь надстройка может быть загружена снова ...
  • Вернитесь в поле Управление , измените Отключенные надстройки на Надстройки COM , а затем нажмите Перейти .
  • Установите флажок рядом с отключенной надстройкой. Нажмите OK .

Вот документы Microsoft об этом: Как: повторно включить надстройку VSTO, которая была отключена

Кроме того, если вы еще этого не сделали, стоит установить VSTO_SUPPRESSDISPLAYALERTS в 0, как описано на этой странице: Как включить оповещения об ошибках VSTO / отображать?

Если ничего из вышеперечисленного не помогает, то стоит сделать Онлайн-ремонт из Office из Установка и удаление программ .

1 голос
/ 31 мая 2019

Наиболее экстремальные шаги, которые мне пришлось предпринять, когда все работает не так, как ожидалось, это очистить кеш VSTA, либо в реестре, либо в файловой системе. Обратите внимание, что я работаю с шаблонами customizations, которые прикреплены к документам, а не надстройками, которые присутствуют всегда, поэтому это может не относиться к вам. Или, может быть, я не знаю.

Registry

Найдите запись для вашей надстройки в HKCU: \ Software \ Microsoft \ VSTA \ Solutions. Я использую PowerShell для этого, и пример цепочки команд будет выглядеть примерно так:

gci "HKCU:\Software\Microsoft\VSTA\Solutions"


    Hive: HKEY_CURRENT_USER\Software\Microsoft\VSTA\Solutions


Name                           Property                                                                                                                                                                                     
----                           --------                                                                                                                                                                                     
1234abcd-1234-abcd-1234-abcd12 Url                 : file:///Z:/path/to/your/addin.vsto                                                              
34abcd                         SubscriptionID      : addin.vsto, Culture=neutral, PublicKeyToken=<removed>, processorArchitecture=msil                                                                        
                               ApplicationID       : file:///Z:/path/to/your/addin.vsto#addin.vsto, Version=<removed>, Culture=neutral, 
                                                     PublicKeyToken=<removed>, processorArchitecture=msil/addin.dll, Version=<removed>, Culture=neutral, PublicKeyToken=<removed>,                     
                               processorArchitecture=msil, type=win32                                                                                                                                                       
                               ProductName         : addin                                                                                                                                                           
                               LastCheckedTime     : {4, 201, 185, 1...}                                                                                                                                                    
                               UpdateEnabled       : 1                                                                                                                                                                      
                               UpdateInterval      : 1                                                                                                                                                                      
                               UpdateIntervalUnits : days            

remove-item "HKCU:\Software\Microsoft\VSTA\Solutions\1234abcd-1234-abcd-1234-abcd1234abcd"

1012 * Filesystem *

Мои настройки (см. Примечание в начале) установлены на %localappdata%\Apps\2.0, и в редких случаях мне нужно удалить их вручную. Очистка этого менее проста, но обычно есть одна анонимная папка, такая как ABCDEFG0.QWE. Я просто удаляю это, и наряду с другой половиной, я никогда не сталкиваюсь с проблемой, которую не могу решить. К вашему сведению, если у вас есть несколько развертываний, это может удалить все из них. Я делаю это не очень часто, поэтому я не на 100% знаком с тем, как работает эта область, но я никогда не делал ничего хуже, делая это.

Я не знаю, чем это отличается, если вообще отличается, для надстроек уровня приложения, которые могут быть установлены в Program Files.

Редактировать: добавить несколько релевантных ссылок.

Как полностью удалить приложение ClickOnce с моего компьютера?

Очистить кэш загруженного приложения .NET без Mage?

...