博文

目前显示的是 四月, 2018的博文

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,powe

有道词典8.0去广告方法

图片
有道词典8.0更新以后,界面和UI代码结构都大改了,原来的7.x系去广告方法自然就失效了。其实目前8.0版广告比7.x版少了很多,但对于每次查词都会出在结果页的广告还是不能忍的。于是重新研究了一下代码。 和以前一样,有道词典的页面大量用了html代码,然后需要在页面显示的资源用js代码生成。而目前找到的控制广告的代码在有道词典安装目录下版本号目录的resultui\js\dict.min.js中。 为了看起来方便,可以用代码编辑器把这个js格式化一下(这里博主用的VS Code),格式化后在第42行可以找到有关广告的代码如下(本来红线圈出的部分应该可以看到广告字样的,我这里因为已经删掉了就没有了): 改成上图那样即可。不过我没搞清这个代码具体的意义,我试过删除整个function段结果就炸了,什么内容都显示不了,如果有懂的大佬可以帮忙看一下。 有遗漏的地方还请各位大佬多多包涵,毕竟我并不是专业码农只是业余爱好者而且不懂js…… 更新:新发现两处控制广告的代码,如图,一处在resultui\js\dict.min.js中图示的位置(行号是格式化之后的行号),删除我选中的部分即可 另一处是resultui\js\wordbook_detail.min.js中的图示位置(行号是格式化之后的行号),一样是删除我选中的部分即可 更新:方法已失效