zoukankan      html  css  js  c++  java
  • 为自己的应用程序添加脚本支持

    设计具有很好的定制能力,可以通过插件(Addin)、脚本语言等扩展定制的应用程序是一项激动人心的事情,这一类软件包括Microsoft OfficeEmacAutoCADEclipsePhotoshop等等,前3种可以通过VBALisp等语言扩展、定制其功能,后2者可以通过插件来扩展。对于Windows平台,可以有多种为应用程序添加脚本支持的方法,而对于.net平台,则可以使用VSA来完成。

    方法1

    最简单、最直接的方法是使用Windows下的Script Control,在VB环境下,只需要在引用中添加需要的ScriptControl的引用,然后就可以使用这个脚本引擎了,其支持的脚本语言是VBScriptJScript。其使用步骤为:

    1. 创建脚本使用的Object model,对于VB程序,可以简单的把控件、自定义对象等通过ScriptControlAddObject方法添加到脚本引擎对象,在脚本即可使用该对象;
    2. 可以通过AddCode方法为脚本引擎添加代码;
    3. 通过Run方法即可运行脚本,其参数相应的过程名称;
    4. 对于添加到ScriptControl的对象,如果ScriptControlStateConnected,则其事件也可在脚本中相应,对于VBScript,事件响应过程的名称应该是object_eventname。(注:笔者测试没有成功,不知道为什么,请指教)

    这样,就可以为一个应用程序添加必要的脚本支持,当然,编辑器,脚本的保存等还需要另外的工作。
    使用VB6完成的一个简单的例子:https://files.cnblogs.com/maweifeng/ScriptTest.rar 
     

    方法2

    另一个被很多程序应用的方法就是应用VBA SDK(需要支付费用),为自己的应用程序添加脚本支持,笔者没有这个SDK,具体方法就不是很清楚了。使用VBA可以使程序的脚本编写拥有一流的编辑器、用户Form、调试环境、对象查看等。 

    .net环境:

    .net环境下,.net Framework中有一个VSA的命名空间,可以为.net程序添加脚本支持(使用VB.net语言),其方法类似于上述方法,但更复杂、难用,不过功能更强,中文MSDN上有一篇文章,笔者转贴于转载区:http://www.cnblogs.com/maweifeng/archive/2005/03/05/113581.html。不过笔者认为,对于应用程序扩展,使用VB.net似乎有些复杂了。

  • 相关阅读:
    undefined与null
    php中实现MVC的思想
    jquery返回json格式数据来获取每天的天气预报
    在php.ini中safe_mode开启之后对于PHP系统函数有什么影响呢?
    PHP的垃圾收集机制是怎样的
    javascript图片预加载技术
    web标准
    javascript简介
    javascript中的四种循环语句
    那些年,我还在学习C#
  • 原文地址:https://www.cnblogs.com/maweifeng/p/113587.html
Copyright © 2011-2022 走看看