注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

面包会有的

php asp 高端网站开发 微信网站开发 视频会议软硬件

 
 
 

日志

 
 

ActiveX  

2011-09-15 18:05:25|  分类: 安装程序制作 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

ActiveX是Microsoft为了使开发人员能够把计算机桌面环境与构成Internet及其大量资源的环境集成起来,同时保护在Windows中现有的开发投资。ActiveX包括对两个现有Microsoft技术的一系列扩充和增强,这两个技术是:Win32 API和组件对象模型(COM),对象链接和嵌入(OLE)应用是基于它构造的。

  所谓ActiveX组件是指一些可执行的代码,比如一个 .exe,.dll 或 .ocx 文件,它们在提供对象时遵循ActiveX 的规范。通过ActiveX技术,程序员就能够把这些可复用的软件组装到应用程序或者服务程序中去了。

ASP

  ASP是服务器端的脚本编写环境,您可用它来创建动态 Web 页或生成功能强大的Web应用程序。ASP页是包括HTML标记、文本和脚本命令的文件。ASP页可调用ActiveX组件来执行任务。

ActiveX组件的创建、注册

  你可以为大量的Internet和Intranet高级应用创建ActiveX组件,现在就以一个实例来探讨ActiveX组件的创建、注册和在ASP页中的使用。

  程序员可以用任何一种支持自动化的程序语言开发ActiveX组件。选择程序语言应考虑:你对这种语言的熟悉程度,工具支持,运行时性能,线程模型,代码复杂程度,已编译代码的大小。可以用来编写自动化组件的语言和产品有:Microsoft Visual C++, Microsoft Visual Basic和Java。本文使用的实例采用Microsoft Visual Basic编写。

  ASP本身也具有几类内嵌的ActiveX组件,其中包括File Access组件,但是一般只用于客户端的文件读写;如果要实现对服务器端的文件读写,就需要给Winnt Server的Internet匿名访问帐户IUSER_XXXX(下划线后为Winnt Server的主机名)对Web Site的写权限,这样就造成系统安全的漏洞。通过创建一个读写特定文件的服务器端ActiveX组件,就可以保证系统安全性。

现在简单叙述一下在Microsoft Visual Basic 5.0中编制ActiveX组件的过程:

1. 打开Microsoft Visual Basic 5.0,在新建工程窗口中选择“ActiveX DLL”(图1);
2. 在工具栏中选择“添加类模块”,添加类、属性、方法等(图2);
3. 可以给新添加的类模块起名、设置属性。本文的ActiveX组件的类如下,注意FileText类的Instancing属性设置为“5-MultiUse”(图3);
4. 然后还需要给ActiveX组件提供一个客户方调用入口,选择工具栏“添加模块”,然后键入一个空的main()过程以作为客户方调用的入口(图4);
5.把工程名设置为“Stone”,注意:工程名加类名“Stone.FileText”是以后在ASP中调用此ActiveX组件的“ProgID”;
6. 在菜单中选择“文件生成FileText.dll”,把文件编译为DLL文件(图5);
7. 把FileText.dll文件Copy到“C:\Winnt\ system32\”路径下,在此路径执行“C:\Winnt\system32\ regsvr32 FileText.dll”在Winnt注册表中注册此DLL文件。完成后,可以在Winnt注册表中查到“Stone .FileText”组件的CLASSID是“{425BDE6C-D38F-BA80-00104B27C01D}”,表明组件已经正确注册

在ASP页面调用自制ActiveX组件

用以下两种方法在ASP页面调用上述的组件:

A. 静态调用
使用HTML标准Tag :<Object>和</Object>,示例如下:
<OBJECT id=FT classid="clsid: 425BDE6C-D38F-BA80-00104B27C01D" width=1height=1align=left>
之后,就可以在ASP语句中使用此ActiveX组件的几个方法了;

B. 动态调用
使用ASP内嵌Server对象的CreateObject()方法:
<%
Set FT = Server.CreateObject("Stone.FileText") '创建组件的实例(即对象)
CurPath = server.mappath("Sms/")
'得到虚拟路径“Sms/”的Winnt实路径
CurPath = CurPath & "\" & RS_Movie("Link_Filename") '得到全路径
FT.OpenReadText CurPath, 1
'使用“Stone.FileText”组件的OpenReadText方法打
'开一个文件
%>

  评论这张
 
阅读(480)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017