将OFFICE文件嵌入技术发挥到极致,以后安装插件,只需要简单在VBA/jsa宏工作薄上调用下代码即可。将jsEvaluator这个xll带进WPS世界,可以让jsa宏调用windows生态里的ActiveX和Com组件,无限可能。从此自己写的一些jsa,需要使用eval函数时,可以提前运行下模板里的InstallXllAddins函数运行一下即可。
话说这个jsEvaluator插件有多强大,它直接打开了一扇门,让WPS可以在jsa环境上一样可以使用ActiveX和Com组件。具体原理是:
利用jsa开的一个小后门,可以通过Application.Run方法,来运行xll插件的自定义函数,而jsEvaluator插件核心就是提供了一个eval的函数,它在xll内部,引用了微软的Microsoft.JScript库,可以运行Jscript片段代码,这个Jscript,是比较初级的javascript,不能支持现代javascript的新方法和新特性。
具体能够用这个eval函数做什么,它让WPS可以访问windows的许多资源,如注册表、数据库,文件系统,还有许多历史遗留下来的ActiveX和COM组件例如网页访问组件xmlhttp等。
具体可以参照jsEvaluator插件作者的举例。
https://www.cnblogs.com/FanXiaoLei/p/16657526.html