用JavaScript编写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执行脚本程序的过程。

(0)

相关推荐

  • 在javascript中使用com组件的简单实现方法

    首先创建一个COM组件,插入一个双接口Itest,在此接口上实现以下三个方法: STDMETHODIMP Ctest::test(void) //无输入输出参数  {  // TODO: 在此添加实现代码  MessageBox(NULL,L"test",L"test",MB_OK);  return S_OK;  }  STDMETHODIMP Ctest::test1(BSTR a1) //有一个字符串输入参数  {  // TODO: 在此添加实现代码  Me

  • 在jsp程序中使用com组件

    在jsp程序中使用com组件的机会并不多,jsp也没有直接操作com的函数,但有的工作有时候还必须使用com组件来完成,下面就来说一下具体的操作方法. 在jsp中使用com组件有两种方法:一种是用javascript在客户端来控制(严格说这个应该是html的功能),如: <OBJECT id="myCom" classid="clsid:9D8A2E2F-D38F-CDAC-D0C5-5B3FB2275442" codebase=".com/com.

  • 引入autocomplete组件时JS报未结束字符串常量错误

    就我的问题以及解决办法: 我在引入jQuery的autocomplete组件时,遇到js报未结束字符串常量错误. 原因分析:首先,右击页面查看编码是utf-8, 其次,查看js报错的函数,以及找到对应的函数. 发现原来jQuery.autocomplete.js中的感叹号为中文的即!将其修改为英文的!,出错问题解决.

  • 用JavaScript编写COM组件的步骤

    支持这些接口的脚本语言有:JavaScript/JScript.VBScript.Perl和Python等. WSC有以下特点.  小巧高效:  易于创建.维护和部署:  提供了创建COM部件的能力:  提供了访问大量系统服务的能力. 用JavaScript编写COM组件的核心工作是完成一个.wsc(Windows Scripting Component)文件..wsc文件是一种标准的XML文件,其格式如下: <?xml version="1.0" encoding=&q

  • vue3.0封装轮播图组件的步骤

    接着上一篇文章,熟悉vue3.0的基本用法,和使用一段时间以后,开始准备开发适用于vue3.0使用的pc端的组件库.会陆续跟新一些组件库的写法和注意事项,有兴趣的同学可以多多关注哦,不多bb,开始. 开发一个轮播图组件,适用pc端,(暂无考虑app), 使用于vue3.0 + TS 大致的实现效果是这样: 图片自由轮播,对应圆点图片跳转,左右指示器跳转等.暴露以下options配置: 以上是主要的options,下面展开来说一下具体如何封装. 一:封装思想 在vue3.0和vue2.0中封装组件

  • 原生JavaScript编写canvas版的连连看游戏

    本文实例为大家分享了JavaScript编写canvas版的连连看游戏的具体实现代码,供大家参考,具体内容如下 效果图: 实现代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style> #box{ /*border: 1px solid #D1D1D1; */ overflow: hidden; pos

  • JavaScript编写棋盘覆盖代码详解

    一.前言 之前做了一个算法作业,叫做棋盘覆盖,本来需要用c语言来编写的,但是因为我的c语言是半桶水(哈哈),所以索性就把网上的c语言写法改成JavaScript写法,并且把它的覆盖效果显示出来 二.关键代码 <!DOCTYPE html> <html> <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <titl

  • C++编写DLL动态链接库的步骤与实现方法

    本文实例讲述了C++编写DLL动态链接库的步骤与实现方法.分享给大家供大家参考,具体如下: 在写C++程序时,时常需要将一个class写成DLL,供客户端程序调用.这样的DLL可以导出整个class,也可以导出这个class的某个方法. 一.导出整个class 方法很简单,只需要在类的头文件中class和类名之间加上_declspec(dllexport),同时在另外一份提供给客户端调用程序使用的类的头文件中class和类名之间加上_declspec(dllimport).为了能让客户端程序和D

  • 一个Javascript 编写的代码编辑器

    EditArea : http://sourceforge.net/projects/editarea 特点:1. 一个 Javascript 编写的代码编辑器, 支持代码加亮, 缩进, 行号等特征; 2. A free javascript editor for source code. It allow to write well formated source code with line numerotation, tab support, search & replace (with

  • JavaScript编写简单的计算器

    本文实例讲述了JavaScript编写简单计算器的代码.分享给大家供大家参考.具体如下: 运行效果截图如下: 具体代码如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>计算器</title> <style> /*Basic reset*/ *{ margin:0; padding:0; b

  • C#编写COM组件的方法分析

    本文实例讲述了C#编写COM组件的方法.分享给大家供大家参考,具体如下: 1.新建一个类库项目 2.将Class1.cs改为我们想要的名字 问是否同时给类改名,确定 3.修改Properties目录下面的AssemblyInfo.cs ComVisible属性设置为True 4.项目菜单->MyLib属性 找到"生成"选项卡 往下看,找到"为 COM Interop 注册"勾上 5.继续往下,找到"签名"选项卡   勾上"为程序集

  • 使用async-validator编写Form组件的方法

    前端开发中,表单的校验一个很常见的功能,一些 ui 库例如ant.design与Element ui都实现了有校验功能的 Form 组件.async-validator是一个可以对数据进行异步校验的库,ant.design 与 Element ui 的 Form 组件都使用了 async-validator.本文就简单介绍一下 async-validator 的基本用法以及使用该库实现一个简单的有校验功能的 Form 组件. 1. async-validator 的基本用法 async-vali

  • 实例分析编写vue组件方法

    vue组件的概念是变得越来越重要了噢.今天小编我就来给大家分享一下编写vue组件的经验噢. 1.首先引入vueJS框架并且在底部new一个vue实例便可得到一个组件了哦. vue实例本身就是一个最大的组件了噢. 2.然后可以在vue实例中使用template来编写组件的模板数据了哦. 3.接着整个vue实例就会绑定到div上面了哦.这样浏览器所呈现的便是整个组件的所有template的内容了. 4.但是一个大组件中是有许许多多不同的组件来进行开发的. 所以可以用vue.component来定义组

随机推荐