1

是否可以自动打开处于开发人员模式的插件?

根据文档

您指定自动打开的窗格仅在用户设备上已安装插件时才会打开。如果用户在打开文档时没有安装加载项,则自动打开功能将不起作用,该设置将被忽略。如果您还需要将加载项与文档一起分发,则需要将可见性属性设置为 1;这只能使用 OpenXML 来完成,本文后面会提供一个示例。

特别是,我试图自动打开的文件是基于office-generator的,只进行了一次修改:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <we:webextension xmlns:we="http://schemas.microsoft.com/office/webextensions/webextension/2010/11" id="{acbc717b-5139-428a-9089-e9d6d7d8affc}">
  <we:reference id="acbc717b-5139-428a-9089-e9d6d7d8affc" version="1.0.0.0" store="developer" storeType="Registry"/>
  <we:alternateReferences/>

  <we:properties>
    <we:property name="Office.AutoShowTaskpaneWithDocument" value="true"/>
  </we:properties>

  <we:bindings/>
  <we:snapshot xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"/>
</we:webextension>

加上<we:property name="Office.AutoShowTaskpaneWithDocument" value="true"/>

并通过manifest.xml如下修改:

<Action xsi:type="ShowTaskpane">
  <TaskpaneId>Office.AutoShowTaskpaneWithDocument</TaskpaneId>
  <SourceLocation resid="Taskpane.Url"/>
</Action>

问题:

预计会有一个自动打开的任务窗格。

自动打开的任务窗格有一个错误,指出we can't find the task pane to open. 另一方面,单击功能区可以让任务窗格正常打开,与损坏的自动打开的任务窗格并排打开,如下图所示:

在此处输入图像描述

4

1 回答 1

2

Microsoft Word 中有一个隐藏状态,即使在重新启动后仍然存在。要重现该错误,您几乎需要一台新计算机

让我解释一下我是如何在... 1 周后让它工作的。

首先从 office-js 生成器开始。

yo office,为此我选择了打字稿。

在此处输入图像描述

修改 src/taskpane/taskpane.ts 如下:

export async function run() {
  return Word.run(async context => {
    /**
     * Insert your Word code here
     */

    // insert a paragraph at the end of the document.
    const paragraph = context.document.body.insertParagraph("Hello World", Word.InsertLocation.end);

    // change the paragraph color to blue.
    paragraph.font.color = "blue";

    // Add these two lines
    Office.context.document.settings.set("Office.AutoShowTaskpaneWithDocument", true);
    Office.context.document.settings.saveAsync();
    // Technically should wait, but doesn't matter.

    await context.sync();
  });

修改 manifest.xml 如下: 替换ButtonId1Office.AutoShowTaskpaneWithDocument

<Action xsi:type="ShowTaskpane">
  <TaskpaneId>Office.AutoShowTaskpaneWithDocument</TaskpaneId>
  <SourceLocation resid="Taskpane.Url"/>
</Action>

正常启动项目。 npm run start

单击运行按钮以触发自动打开文件的创建。

在此处输入图像描述

将文件保存在某处。

重新打开它以验证它是否有效。有趣的是,当我单击显示任务窗格按钮时,它创建了一个相同的任务窗格。这是一个错误,但对我有用。毕竟是为了测试目的。

在此处输入图像描述

证明文件的问题确实是隐藏状态:在新电脑上克隆repo ,,npm run start复制文件过来。

运行该文件,您将遇到与我在原始帖子中遇到的相同问题。

于 2019-06-07T04:39:37.503 回答