2017-08-31 52 views
1

我目前正在开发Microsoft Word Web Add-in无法在Windows上的MS Word中加载加载项

由于我使用Mac,我已下载了Windows 10 VM并使用Office 365订阅安装了Office。

我可以让Word加载项在Office 365和Word for Mac上运行,但不能在Word 2016 for Windows上运行。

我无法在Windows 10上运行Word 2016来运行任何加载项,无论是我自己写的还是从商店下载的加载项。 Word总是显示“加载”的加载项框架,然后它只停留在那里;加载项从不加载。

我没有得到菜单选项来附加调试器,并且没有明显的错误消息。

在虚拟机上运行加载项有一些限制吗?我在哪里开始调试呢?

编辑:

我只注意到我自己的侧加载的加载在一个弹出打开背后字,对话框然后防止Word开口还抛出一个错误加载项。因此,如果我关闭了弹出窗口对话框,则商店中的加载项按预期工作。不过,我不能侧装自己的加载项。

我得到的错误是

找不到‘file://msedgewin10/manifest/boilerplate/home.html?_host_Info=Word$Win32$16.01$en-US’。确保路径或Internet地址是正确的。

但是,如果我将这个地址粘贴到IE中,它将打开没有任何投诉的文件。很奇怪。

+0

您是否检查过,如果可能在Microsoft Word的安全中心中选择停用所有加载项?我不知道在VM中运行的加载项有任何限制。 –

+0

安全设置_seem_没问题,虽然很明显我无法访问“file://msedgewin10/manifest/boilerplate/home.html?_host_Info = Word $ Win32 $ 16.01 $ en-US”。加载项被激活,但是我的侧面加载插件存在问题。 – Fergie

+0

感谢您更新您的问题。这让我想起了我的其他答案:https://stackoverflow.com/a/45938904/1306012您需要在防火墙中添加Microsoft Word的例外以跟踪链接。 –

回答

1

这里是壳体任何人的修复程序疑惑:

我的初始侧加载的加载在被创建导致Word以创建弹出后面字中的错误通知,然后阻塞的执行的错误所有后续加载项。 所有错误弹出窗口必须关闭之前,加载项将再次工作

所以实际上我的侧加载插件被打破,这导致所有后续加载项不起作用。

有点愚蠢的错误,但一个头刮刀无所谓。

1

我不建议使用file:// uris进行侧面装载。在Office for Windows中使用SMB Share method通常更容易。当我在Mac上开发时,我倾向于从我的Mac共享wef目录,因此我的清单更改同时显示在Mac和Windows中。

弹出的问题是不同的任何人。这可能是因为您使用JavaScript打开弹出窗口(即window.open(...))。使用这种方法的结果是非常奇怪的行为,这是由于浏览器和浏览器引擎Office为加载项利用的数量。

对于弹出窗口,您应该始终使用使用Office.js中包含的Dialog API。此API是针对跨所有受支持的Office环境(Windows,Mac,iOS,Android,Chrome,Firefox,Safari,IE,Edge)而定制的。当您想要在加载项和对话框之间进行父/子通信时,它特别有用;在Mac或Windows上不容易完成的事情是弹出窗口在与加载项完全不同的浏览器实例中运行。

关于开发加载项的一个关键技巧是注册Office 365 Developer Program。这使您可以访问免费的Office 365开发人员租户。虽然这可能看起来过于夸张,但它可以大大简化您的生活,因为它允许您使用O365的Centralized Deployment功能在多个Office客户端(Windows,Mac,Online等)上即时部署清单。当谈到开发/测试时,这是一个巨大的节省时间。它也会对你的清单进行一些轻量级的验证,这可以避免一些常见的错误。

另一个提示是使用Azure Web Apps来托管加载项。这为您提供了开箱即用的公开URL和SSL证书(Office对于所有加载项都需要SSL)。最好的部分,你可以跑到10 Azure Web Apps for free。作为我的加载项构建过程的一部分,我通常会将代码的大小提高到最大。 Azure支持通过FTP/SFTP,continuous integration(VS Team Services,GitHub或BitBucket)或甚至从local Git repository进行发布。

+0

嗨马克,只是为了澄清 - Word是在一个对话框(“弹出下”)中出现一个错误消息,并且默默阻止了所有的加载项执行,直到我碰巧最小化一些窗口并单击“确定“在所有的对话框上。 感谢您提供关于“Office 365开发人员计划”的提示,我将对其进行检查 - 在多个平台上开发/测试对我们来说非常重要。 与许多JS程序员一样,我现在发现自己在OSX/* n * x领域多年后,经历了很多Windows/Office工作,所以提示会很棒。我应该在哪里与Office Add-In开发人员聊天? – Fergie