Win 10应用商店版Office安装模板类插件的方法

大概在今年初微软对所有Win10桌面版设备开放了应用商店版Office桌面程序的下载权限(需要有效的Office 365订阅)。用应用商店版有以下的好处:

第一是可以方便地选择组件安装。众所周知从Office 2013开始,个人版Office想要选择安装的组件就极其麻烦,必须借助部署工具并且熟悉配置文件结构,自己写出一个配置文件才可以。Office 365更是不给个人用户选择权限。而在商店版中就没有这种限制,你可以自由选择要安装的组件。

第二是更新十分方便。应用商店自己就会把Office更新了,不用再去手动去Windows更新那里检查更新。

第三是基本不会发生office文件被破坏的现象,因为你根本没有WindowsAPP文件夹的访问权限。卸载起来也十分干净方便,直接右键图标卸载就行,绝无残留。

不过也有一些不足。最明显的就是加载插件的问题。传统Win32的Office写了注册表,第三方程序知道应该如何与Office通讯;而应用商店版的由于不存在常规的注册表操作,因此第三方程序目前是没有什么办法的。对于COM类插件还好,这些因为在系统内有注册记录可以直接识别;但是像Zotero这种插件属于Word模板的程序就没有办法,如果手动加载模板会提示宏被禁用(这个模板是加载宏的,但因为安全策略默认会禁止宏),需要每次启动都点一下。这里我们用另外一个解决方案,这里参考了Zotero官方的faq,但稍有不同。

以Zotero插件为例,我们打开应用商店版Word,点击“文件”-“选项”-信任中心-受信任位置,可以看到Word设置了三个受信任位置:

捕获

注意这里的位置,从这里加载的文件,宏都是不会禁用的。对于Zotero插件这样的,我们需要一启动Word就让它加载(如果你放到模板的位置就是默认加载但不应用了),所以我们需要让它的核心文件Zotero.dotm(原始位置在Zotero安装目录\extensions\zoteroWinWordIntegration@zotero.org\install下)位于第三个目录中。

但是如果直接Copy过去又有一个问题,如果Zotero程序更新了,这个copy过去的模板文件可是不会自动更新的,因此可能一些已经解决的兼容性问题就没法应用了。所以这里我们用一个小技巧,那就是文件链接。

以管理员身份打开命令行(注意是cmd不是powershell,powershell没法用创建链接的命令),输入以下命令:

mklink "C:\Users\xxx\AppData\Local\Packages\Microsoft.Office.Desktop_8wekyb3d8bbwe\LocalCache\Roaming\Microsoft\Word\STARTUP\Zotero.dotm" "C:\Program Files (x86)\Zotero\extensions\zoteroWinWordIntegration@zotero.org\install\Zotero.dotm"

这里的xxx改为你的用户名,后面的programfiles那串改成你Zotero.dotm的实际存在位置。这样就实现了不管你Zotero怎么更新我加载到word里的插件都能同步更新了。利用的原理是文件链接对windows来说就是一个特殊的快捷方式。

这个方法还可以推广到其他程序,路径自己研究一下即可。

评论

此博客中的热门博文

白嫖azure服务器搭建全套rss阅读环境

有道词典8.0去广告方法

Zotero Word插件汉化和移动到“引用”选项卡