为应用程序添加脚本访问功能

本文介绍了如何为应用程序添加脚本访问功能,包括通过API或COM接口访问程序,创建脚本编辑器,选择和集成脚本引擎如Active Scripting或V8,并详细阐述了如何实现加载、运行和停止脚本的操作。通过实例展示了如何调用脚本操作器执行脚本以及避免内存泄漏问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        首先,要有一个可以通过代码访问的应用程序,两种方式,一种是程序提供应用接口,要么是API,要么是COM接口,另一种,能够获得程序全部的源代码。

        以上条件具备后,接下来,比较专业一点的方式,建立一个脚本编辑器程序,一般用一个单文档的应用就行,View类里放一个RichEditCtrl或者第三方的脚本控件,如Scintilla等,主要是为了编辑脚本方便以及提供一个美观的界面,让脚本程序员用着舒服。建立完编辑程序之后,在其中加入编译及运行操作按钮,如果能够加上调试按钮并实现的话,最好不过了。

        这些架子搭完后,就要选择脚本引擎,一般我们不需要自己去写引擎,有几种优秀而且容易获得的引擎可供选择。比如微软的Active Scripting,谷歌开发的V8引擎等。V8引擎用于javascript脚本,Active Scripting分为VBScript和JScript,如果仅做javascript脚本,那么选择V8,如果要做VB脚本的话,那就选择微软。

        这里选择Active Scripting。为建立好的脚本编辑器程序添加一个脚本操作器,这个脚本操作器就是一个Atl简单对象,可以实现加载脚本、运行脚本、停止脚本三种操作。这三种操作都是自己定义的,然后别的程序可以调用的,而且调用起来很方便。其中运行脚本这个操作就要使用到Active Scripting技术了。要实现运行脚本功能,得在脚本操作器的要继承的类中添加CObject类、IActiveScriptSite接口和IActiveScriptSiteWindow接口。这三项是最基本的,如果要实现调试功能的话,还要加一些其它的接口。添加CObject类是因为脚本操作器的MapNamedItems要设置为类本身,所以操作器要成为CObject的子类,ManNamedItems是一个CMapStringToOb类,它的项必须要设置为CObject

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值