用JavaScript编写COM组件的步骤


Posted in Javascript onMarch 17, 2009

支持这些接口的脚本语言有:JavaScript/JScript、VBScript、Perl和Python等。
WSC有以下特点。
 小巧高效;
 易于创建、维护和部署;
 提供了创建COM部件的能力;
 提供了访问大量系统服务的能力。
用JavaScript编写COM组件的核心工作是完成一个.wsc(Windows Scripting Component)文件。.wsc文件是一种标准的XML文件,其格式如下:
<?xml version="1.0" encoding="UTF-8" ?>
<?component error="true" debug="true" ?>
<component id="程序ID">
<registration
description="描述"
progid="程序ID"
version="版本号"
classid="类型ID" remotable="true">
</registration>
<public>
<!--
定义组件方法
-->
<method name="方法名">
<parameter name="参数1"/>
<parameter name="参数2"/>
</method>
<!--
定义组件属性
-->
<property name="属性名"/>
</public>
<resource id="前面定义过的方法或属性名"><![CDATA[
描述前面定义过的方法或属性名
]]></resource>
<script language="VBScript">
<![CDATA[
用VBScript实现的代码
]]>
</script>
<script language="JavaScript">
<![CDATA[
用JavaScript实现的代码
]]>
</script>
</component>
整个.wsc文件由组件声明、方法和属性声明、方法和属性描述、方法实现等部分组成。使用VBScript或JavaScript等脚本语言编写COM组件的过程,也就是完成.wsc文件的过程。
注意:使用VBScript或JavaScript等脚本语言编写出来的COM组件,其执行性能是不能与以.dll、.ocx等可执行的二进制文件为载体的COM相提并论的。因为脚本语言并不能被编译,而只能运行于宿主机中,Windows平台上的脚本宿主机是WSH(Windows Scripting Host),即WINDOWS\system32\scrobj.dll。
调用以脚本语言编写的COM组件,实际上是一个直接调用WSH、再由WSH执行脚本程序的过程。

Javascript 相关文章推荐
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
Jan 22 Javascript
对比分析json及XML
Nov 28 Javascript
node.js中的fs.write方法使用说明
Dec 15 Javascript
php+ajax+jquery实现点击加载更多内容
May 03 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
May 25 Javascript
基于JavaScript实现跳转提示页面
Sep 24 Javascript
JavaScript和jQuery制作光棒效果
Feb 24 Javascript
判断iOS、Android以及PC端的示例代码
Nov 15 Javascript
基于Koa2写个脚手架模拟接口服务的方法
Nov 27 Javascript
vue学习笔记之Vue中css动画原理简单示例
Feb 29 Javascript
Element Carousel 走马灯的具体实现
Jul 26 Javascript
微信小程序实现下拉加载更多商品
Dec 29 Javascript
IE6与IE7中,innerHTML获取param的区别
Mar 15 #Javascript
InnerHtml和InnerText的区别分析
Mar 13 #Javascript
JavaScript 快捷键设置实现代码
Mar 13 #Javascript
JavaScript 事件属性绑定带参数的函数
Mar 13 #Javascript
自动完成JS类(纯JS, Ajax模式)
Mar 12 #Javascript
动态添加js事件实现代码
Mar 12 #Javascript
javascript prototype 原型链
Mar 12 #Javascript
You might like
PHP中PDO基础教程 入门级
2011/09/04 PHP
跟我学Laravel之请求(Request)的生命周期
2014/10/15 PHP
php生成图片验证码的实例讲解
2015/08/03 PHP
php代码检查代理ip的有效性
2016/08/19 PHP
PHP HTTP 认证实例详解
2016/11/03 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
2021/03/09 PHP
用js读、写、删除Cookie代码分享及详细注释说明
2014/06/05 Javascript
浅谈Javascript 数组与字典
2015/01/29 Javascript
AngularJS入门教程之AngularJS指令
2016/04/18 Javascript
node.js爬虫爬取拉勾网职位信息
2017/03/14 Javascript
AngularJS改变元素显示状态
2017/04/20 Javascript
vue 计时器组件的实现代码
2017/09/14 Javascript
用Node编写RESTful API接口的示例代码
2018/07/04 Javascript
原生js实现轮播图特效
2020/05/04 Javascript
vue监听键盘事件的相关总结
2021/01/29 Vue.js
[42:32]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第二局
2016/02/27 DOTA
[01:10]DOTA2 Supermajor:英雄,由我们见证
2018/05/14 DOTA
使用apidoc管理RESTful风格Flask项目接口文档方法
2018/02/07 Python
Python实现的简单计算器功能详解
2018/08/25 Python
django 外键model的互相读取方法
2018/12/15 Python
python爬取cnvd漏洞库信息的实例
2019/02/14 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
这可能是最好玩的python GUI入门实例(推荐)
2019/07/19 Python
python 如何将数据写入本地txt文本文件的实现方法
2019/09/11 Python
Python银行系统实战源码
2019/10/25 Python
住房公积金接收函
2014/01/09 职场文书
计算机专业优秀大学生自我总结
2014/01/21 职场文书
班班通校本培训方案
2014/03/12 职场文书
镇创先争优活动总结
2014/08/28 职场文书
领导干部群众路线剖析材料
2014/10/09 职场文书
四风问题查摆剖析材料
2014/10/11 职场文书
ThinkPHP5和ThinkPHP6的区别
2021/03/31 PHP
【超详细】八大排序算法的各项比较以及各自特点
2021/03/31 Python
Python异常类型以及处理方法汇总
2021/06/05 Python
Django模型层实现多表关系创建和多表操作
2021/07/21 Python
使用Bandicam录制鼠标指针并附带点击声音,还可以添加点击动画效果
2022/04/11 数码科技