用JavaScript编写COM组件的步骤



    用JavaScript编写出来的COM组件称为WSC。WSC即Windows脚本组件(Windows Scripting Component),是Microsoft COM的一个新技术,可以通过易于使用的脚本语言来创建。支持这些接口的脚本语言有: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执行脚本程序的过程。