Почему этот пользовательский интерфейс backstage для Word не отображает пользовательский интерфейс?

у меня есть Office addin, который использует следующий backstage XML для добавления пользовательских элементов пользовательского интерфейса в Microsoft Word backstage:

<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
  <backstage onShow="Backstage_OnShow">
    <tab idMso="TabSave">
      <firstColumn>
        <taskFormGroup idMso="SaveGroup">
          <category idMso="Save">
            <task id="myCustomTask" label="My Custom Task" insertAfterMso="ButtonTaskDynamicServiceProvider">
              <group id="myGroupInTabSave" label="Custom functionality" helperText="This group contains custom functionality.">
                <primaryItem>
                  <button id="myButton" label="My Button" onAction="CallMe" />
                </primaryItem>
              </group>
            </task>
          </category>
        </taskFormGroup>
      </firstColumn>
    </tab>
  </backstage>
</customUI>

это базовый сценарий, описанный здесь для изменения диалогового окна Сохранить как.

на моей машине он ничего не показывает под Save As. Однако я вижу, что при отображении backstage вызывается следующая функция:

public void Backstage_OnShow(object contextObject) {
    // It hits this method.
}

Каковы некоторые из причин, почему интерфейс не покажет, а также, как я могу отладить то, что здесь происходит? Я попытался включить Show add-in user interface errors на вкладке "Дополнительно" параметров Word, в разделе "Общие", но он не отображает никаких ошибок для меня, насколько я могу судить.

не уверен, что это помогает, Но наша лента наследует IRibbonExtensibility.

мы также обнаружили, что эта логика иногда работает на некоторых машинах, но не на других. Я не знаю, почему...одна вещь, которую я могу сказать вам, что определенно отличается от того, что типы для этого добавления зарегистрирован в regasm вместо того, чтобы addin устанавливается с помощью path|vstolocal раздел реестра в реестре Outlook. Другими словами, мы используем regasm для установки надстройки.

редактировать: я пробовал предложенный ответ, но он все еще не работает с учетом этого подхода. Моя команда и я на данный момент убеждены, что это серьезная ошибка VSTO, и мы подготовили проект для ее демонстрации. Этот проект демонстрирует закулисные ошибки с Windows 10 Pro 64-разрядная версия 1607 (OS build 14393.351) и 32-разрядное слово 2016 16.0.7426.1009 (Office 2016 32-разрядная версия 1610, build 7466.2023): https://github.com/Murdoctor/WordAddin1

если вы запустите этот образец в той же или подобной среде, вы увидите, что если вы нажмете вкладку Home в верхней части Word, вы увидите кнопку, которая определена вhttps://github.com/Murdoctor/WordAddin1/blob/master/WordAddIn1/Ribbon1.xml, но, если вы открываете backstage вы не видите вкладку образца, которая должна быть вставлена после вкладки info,TabInfo (этот скриншот был сделан с помощью сборки выпуска, запущенной в режиме отладки непосредственно из Visual Studio, и я вижу, что addin зарегистрирован и все такое):

enter image description here

единственное ,что вы увидите, это (это также доказательство того, что addin запущен и зарегистрирован на своем локальном VSTO файл):

enter image description here

редактировать: это также влияет на 64-разрядный Office. Я только что установил Word 2016 16.0.7426.1009 (Office 2016 64-разрядная версия 1610, сборка 7466.2023) думая, что изменение на x64 может помочь, но я все еще испытываю ту же проблему на своей машине.

редактировать: это также влияет на сегодняшний выпуск Windows 10 Pro x64 версии 1607, сборка 14393.447. Кроме того, я пробовал отключение всех других дополнений, все то же самое.

1 ответов


Это ошибка с Office. Я могу подтвердить в своей среде, это снова сработало после обновления Word вручную с помощью обновление 8 ноября который вчера вышел. Это обновление не появилось, когда я попытался найти обновления в Windows 10, вместо этого мне пришлось установить его следующим образом:

  1. внутри слово, нажмите кнопку открыть закулисье.

  2. нажмите на кнопку Параметры Обновления раскрывающийся.

  3. выберите Обновить.

после обновления до версии Office 1610, построить 7466.2038, эта ошибка уходит:

enter image description here