delphi制作的activex(ocx)如何用于ie浏览器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi制作的activex(ocx)如何用于ie浏览器相关的知识,希望对你有一定的参考价值。
参考技术A 在Windows 操作系统下,有一个重要的机制,就是OLE ,就是可以让某个应用程序(OLE Controller)访问其它应用程序(OLE Server)所提供的
功能,这样做的好处是,如果已经有了完成某项功能的程序,你就不必再为
某项功能编写特定的应用程序,可以直接通过OLE 调用。
一、 制作用Web 调用的ActiveX
首先设置一个虚拟目录,定名为Delphi
1)进入Delphi,Close all
2)New -> Other -> ActiveX -> ActiveX Form ->Name: MyActiveX
OK
3)出现一个普通的Form界面,放入
TButton
TListBox
TEdit
三个控件,设计目标是,点Button后ListBox添加一个Edit的内容。
4)Save all 到虚拟目录的 ActiveX\Ac2\ 子目录下。
5)双击Button,在Button1Click事件程序下写:
ListBox1.items.add(edit1.text);
6)这就完成了,保存。
7)Porject ->Build All 编译
8)Porject -〉Web Deployment Options 设置分发参数
第一项:OCX保存的目录 (虚拟目录\ActiveX\ac2\)
第二项:OCX保存在哪个相对路径中
(http://127.0.0.1/delphi/ActiveX/ac2/)
第三项:Delphi产生的html 保存路径(虚拟目录\ActiveX\ac2\)
Ok
9)产生嵌入ActiveXForm的HTML文件
Porject -〉Web Deploy
现在保存这个工程然后退出
观察效果
打开IE浏览器, 把网址写为:http://127.0.0.1/delphi/activex/ac2/
就可以看到下面的文件列表:
[To Parent Directory]
2000年5月27日 9:10 750 MyActiveImpl1.~dfm
2000年5月27日 9:11 9160 MyActiveImpl1.~pas
2000年5月27日 9:31 16936 MyActiveImpl1.dcu
2000年5月27日 9:16 51 MyActiveImpl1.ddp
2000年5月27日 9:14 778 MyActiveImpl1.dfm
2000年5月27日 9:15 9307 MyActiveImpl1.pas
2000年5月27日 9:11 334 MyActiveProj1.~dpr
2000年5月27日 9:11 6424 MyActiveProj1.~tlb
2000年5月27日 9:27 386 MyActiveProj1.cfg
2000年5月27日 9:27 1436 MyActiveProj1.dof
2000年5月27日 9:11 334 MyActiveProj1.dpr
2000年5月27日 9:29 382 MyActiveProj1.htm
2000年5月27日 9:31 477696 MyActiveProj1.ocx
2000年5月27日 9:27 1836 MyActiveProj1.res
2000年5月27日 9:11 6424 MyActiveProj1.tlb
2000年5月27日 9:11 15377 MyActiveProj1_TLB.~pas
2000年5月27日 9:31 11952 MyActiveProj1_TLB.dcu
2000年5月27日 9:11 15377 MyActiveProj1_TLB.pas
其中:MyActiveProj1.htm 就是刚才内嵌的HTML文件,点击这个超级
链接,就可以看到包含ActiveX的网页了。
打开这个网页的源代码,可以看到这个HTML文件中真正重要的是下面
的一段,把这一段镶嵌到任何一个网页中,都可以调用这个ActiveX 。而
其它部分可以用诸如Frontpage 等网页设计软件来完成。
<OBJECT
classid="clsid:937B0348-FF1E-4E70-9244-3375EF9AF5E5"
codebase="http://127.0.0.1/delphi/ActiveX/Ac2/MyActiveProj1.ocx#version=1,0,0,0"
width=313
height=248
align=center
hspace=0
vspace=0
>
</OBJECT>
真正使用的时候,codebase要使用下面的地址
codebase="http://127.0.0.1/delphi/ActiveX/Ac2/MyActiveProj1.ocx
要改成OCX文件存放的真正的网址。
delphi 中 如何注册ocx文件
delphi 中要用到第三方控件,ActiveX控件的安装要注册,请问如何在注册表中注册这些控件.?
在delphi ocx控件的安装步骤:1、第一步:
使用过Activex的人都知道,Activex不注册是不能够被系统识别和使用的,一般安装程序都会自动地把它所使用的Activex控件注册,但如果拿到的一个控件需要手动注册修改注册表那就太麻烦了,在Windows的system文件夹下有一个regsvr32.exe的程序,就是Windows自带的Activex注册和反注册工具。它的用法为:
regsver32详解
regsvr32 [/s] [/n] [/i(:cmdline)] dllname
其中dllname为activex控件文件名,建议在安装前拷贝到system文件夹下。
参数有如下意义:
/u——反注册控件
/s——不管注册成功与否,均不显示提示框
/c——控制台输出
/i——跳过控件的选项进行安装(与注册不同)
/n——不注册控件,此选项必须与/i选项一起使用
如笔者要注册一amovie.ocx控件,则打入regsvr32 amovie.ocx即可,要反注册它时只需使用regsvr32 /u amovie.ocx就行了。
regsvr32 /s APIINEX.dll 注册DLL文件
regsvr32 /s /u APIINEX.dll 卸载DLL文件
regsvr32 Shortcut.ocx 注册ocx文件
regsvr32 /u Shortcut.ocx 卸载ocx文件
/s .dll,.ocx 注册成功后不显示提示信息。
/u .dll,.ocx 卸载
2、第二步:
delphi->component->Import Activex->找到注册后的ocx控件,然后install即可。 参考技术A 运行 regsvr32 xxx.ocx
以上是关于delphi制作的activex(ocx)如何用于ie浏览器的主要内容,如果未能解决你的问题,请参考以下文章