| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 560 人关注过本帖
标题:如何用VB6写COM组件(一)
只看楼主 加入收藏
月魔
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-7-24
收藏
 问题点数:0 回复次数:4 
如何用VB6写COM组件(一)

所幸的是,我们可以用COM组件来在最大程度上扩展ASP的功能。你可知道,任何可以用诸如VB,VC和VJ以及其它的一些程序语言所写出来的东西,都可以被应用到你的网站的开发中去,这就是COM(组件对象模型)。COM能够用来编写能够被ASP所调用的对象。当在VB等编程环境中完成了组件的编制后,就可以放在ASP页面中被ASP所调用了。在这篇文章中,我们将看到如何使用VB6来编写一个COM对象,如何将其注册在服务器上,并在ASP页面中对其进行调用。但在开始之前,让我先来简单的介绍一写关于COM的小知识。

   COM对象通常表现为一个.dll文件,是一个编译好了的可执行程序。这意味着COM的运行速度要比纯ASP代码要快的多。在调用COM对象之前,必须在运行IIS服务器的机器上对其进行注册,而且不能通过ASP代码来注册COM组件,这也就是说你必须有对服务器的使用权限。

   现在来看一看我们要实现的任务:我们需要创建一个组件,当你对它传递一个年份的时候,它能够告诉你这一年是否为闰年。当然,这个任务可以用VBScript来实现的。这儿是用这个简单的例子,只是为了程序的简便起见,从而能够把更多的注意力放在如何创建组件以及如何同ASP进行交互上面。实际上如同上面所说的那样,你可以使用VB的任何功能来创建这个组件。

   首先要做的当然是编写ActiveX dll组建,至于到底如何在ASP中调用它,我们会在后面提及。打开Visual Basic,一个对话框会提示你选择一种新建工程类型,在这儿当然选择“ActiveX DLL”。

   如果工程浏览器没有被打开,可以通过选择菜单栏上面的“视图|工程浏览器”来打开它。如果属性窗口也没有打开,同样的方法,可以打开属性窗口。

   现在在工程浏览器中点击Project1,然后可以在属性窗口中看到工程的name 属性为Project1,把它改为CheckYear。当然如果你很懒的话,你也可保留这些缺省的设置,只需在后边在ASP中调用它的时候,也使用相应的工程名和类名就好了。

   现在在工程中,已经预建了一个缺省的类,你可以按你自己的喜好来重新对其命名。在这儿把类命名为LeapYear。

   在类中填写入如下的代码:

   Option Explicit

   ´用来判断一个年份是否为闰年的函数

   Public Function IsLeapYear(yr As Variant) As Boolean

   ´如果年份能够被4整除并且不能被100整除,或者能够被400整除

   ´那么它就是闰年

   If (yr Mod 4 = 0 And yr Mod 100 < > 0) Or yr Mod 400 = 0 Then

   IsLeapYear = True

   Else

   IsLeapYear = False

   End If

   End Function

   上面就是所需要的全部代码了,其实很简单。下面所要做的,就是把它编译成一个dll文件。在“文件”菜单中选择“建立CheckYear.dll...”,再选择要文件要保存的路径。一般的,可以在在服务器上的InetPub目录下面建一个Server Components目录,专门用来存放所有用于ASP中的组件。但这不是必须的,无论你把dll文件保存在什么地方,在编译的过程中,编译程序都会自动的在系统中对组件进行注册。


搜索更多相关主题的帖子: COM 组件 
2006-07-24 11:31
穆扬
Rank: 1
等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-07-24 11:40
月魔
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-7-24
收藏
得分:0 
有些是写的有些是转的,哈哈

[此贴子已经被作者于2006-7-24 11:47:48编辑过]

2006-07-24 11:47
穆扬
Rank: 1
等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-07-24 11:52
月魔
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-7-24
收藏
得分:0 
如何用VB6写COM组件(一) 如何用VB6写COM组件(二 ) VB获取当前运行程序标题的caption)
源代码推荐:vb的GUID生成算法 Visual Basic环境下Video/ Au....io压缩数据流播放技术[长]
如何在Windows操作系统中改变文件打开方式
如何在VB6写程序在WIN2K做reboot 如何用VB建立快捷方式 VB编程的必备技巧 源代码推荐:vb的GUID生成算法 VB源码推荐:一个操作Ini文件的类
2006-07-24 14:09
快速回复:如何用VB6写COM组件(一)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027603 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved