11

我有一个 Office 插件,它使用以下后台 XML 将自定义 UI 元素添加到 Microsoft Word 后台:

<?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>

这是此处描述的修改“另存为”对话框的确切基本情况。

在我的机器上,它在“另存为”下没有显示任何内容。但是,我确实看到在显示后台时会调用以下函数:

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

UI 不显示的一些原因是什么,以及如何调试这里发生的事情?我尝试在“常规”部分下的“Word选项”的“高级”选项卡中打开Show add-in user interface errors,但据我所知,它没有向我显示任何错误。

不确定它是否有帮助,但我们的功能区继承了IRibbonExtensibility.

我们还发现这种逻辑有时适用于某些机器,但不适用于其他机器。我不知道为什么...我可以告诉您的绝对不同的一件事是,此插件的类型是注册的,而不是使用Outlook 注册表下的注册表项regasm安装的插件。path|vstolocal换句话说,我们是regasm用来安装插件的。

编辑:我已经尝试了建议的答案,但鉴于这种方法它仍然无法正常工作。在这一点上,我和我的团队非常确信这是一个主要的 VSTO 错误,我们已经制作了一个项目来展示它。该项目展示了Windows 10 Pro 64 位版本 1607(OS build 14393.351)和 32 位 Word 2016 16.0.7426.1009(Office 2016 32 位版本 1610,build 7466.2023)的后台错误:https ://github.com/Murdoctor /WordAddin1

如果您在相同或相似的环境中运行此示例,您可以看到,如果您单击 Word 顶部的 Home 选项卡,您将看到https://github.com/Murdoctor/WordAddin1/blob中定义的按钮/master/WordAddIn1/Ribbon1.xml,但是,如果您打开后台,您看不到应该在信息选项卡之后插入的示例选项卡,TabInfo(此屏幕截图是在调试模式下直接从 Visual Studio,我可以看到插件已注册,一切也已注册):

在此处输入图像描述

您将看到的唯一内容是(这也是插件正在运行并已注册到其本地 VSTO 文件的证明):

在此处输入图像描述

编辑:这也会影响 Office 64 位。我刚刚安装了Word 2016 16.0.7426.1009(Office 2016 64 位版本 1610,内部版本 7466.2023),认为更改为 x64 可能会有所帮助,但我的机器上仍然遇到同样的问题。

编辑:这也会影响今天发布的Windows 10 Pro x64 版本 1607,内部版本 14393.447。另外,我尝试禁用所有其他插件,仍然是同样的事情。

4

1 回答 1

4

这是 Office 的一个错误。我可以在我的环境中确认,在使用昨天发布的11 月 8 日更新手动更新 Word 后,这再次起作用。当我尝试在 Windows 10 中搜索更新时,此更新没有出现,而是我必须以这种方式安装它:

  1. Word里面,点击文件打开后台。

  2. 单击更新选项下拉菜单。

  3. 选择立即更新

一旦您更新到 Office 版本 1610,构建 7466.2038,此错误就会消失

在此处输入图像描述

于 2016-11-09T14:08:37.317 回答