首先要弄明白你要写的OCX是用在客户端还是用在服务器端   

假如用在客户端:

1、创建 

打开delphi 7,选择菜单"new"->"other"->"activex"->"active form"->输入项目名称,   系统自动给你创建了3个文件,一个是项目文件,一个是form的单元文件,还有一个后缀带TLB   的文件。这三个文件中的你只需要更改form的单元文件,项目文件一般不需要写什么,TLB文件   有系统自动维护。

 2、增加接口函数 

所谓接口函数就是调用OCX的程序可以直接调用的函数,如果你要写的函数不提供   外部函数可以按常规声明就可以。但要声明接口函数则必须按步骤声明,

①选择form单位文件(一定要选form文件才可以,否则相应的菜单都是不可用的),然后点击"view"->"Type Library",弹出一个对话框,

②然后选择左侧树状图第一个节点——鼠标右键——New——Method

③修改方法名称,如图所示:

④切换到"Parameters"标签,输入方法参数。

注意:如果参数是string类型,则选择BSTR。如果参数是输入参数,则modifier选择in,

如果是输出参数,则Modifier选out,如果是作为函数返回值,则Modifier选out和refVal

输出参数和函数返回值,Type必须为指针类型 (即:类型 *)

⑤点工具栏的刷新按钮,就会自动更新单元文件代码

如下图,自动生成了function LSBH_LOGIN(const WIN_NO, WORK_NO: WideString): WideString;

safecall;

⑥在自动生成的函数体中写实现代码即可。

3、ocx的注册和卸载。

注册:regsvr32 usQueueOcx.ocx

卸载:regsvr32 /u usQueueOcx.ocx

4、编写html调用ocx (示范文件:testQueue.html)

建议使用Editplus来编写html。

①在Editplus——文件——新建——html网页。

②点工具栏上的对象按钮,选择注册的ocx对象,则html中自动插入对象。

也可以手动插入object对象,代码如下:

<object id="TusQueue" width="0" height="0" classid="CLSID:2FE52D49-D1E2-44C4-AE30-D35BAB691F21"></object>

说明:对象id一般命名和ocx的类名称一致,classid的值可以在ocx代码中搜索classid得到。如下图

5、调试OCX。

我是用html调试的,所以可用在delphi种配置run的参数   "run"->"parametes",弹出一对话框,在"host application"中输入C:\Program Files\Internet Explorer\IEXPLORE.EXE,

在"parametes"中 html文件路径 ,点【OK】按钮。如下图

这样就可以调试delphi代码了。F9运行OCX代码,自动启动parametes设定的浏览器打开调试html,可以设置断点来调试了。

注意:如果是IE8,则会出现无法进入断点的情况。

解决方法: 修改注册表

regedit→ HKEY_LOCAL_MACHINE →SOFTWARE→Microsoft →   Internet Explorer→Main。在Main里新建一个DWORD类型名为TabProcGrowth值为0。

另一种解决方法:delphi7的ocx对应的tlb文件顶部有一个{$VARPROPSETTER ON},把这个开关去掉重新编译注册就可以了

源码下载:http://download.csdn.net/detail/tc310/9114805

Delphi开发OCX详细步骤总结的更多相关文章

  1. Delphi开发ocx插件的调试

    Delphi开发ocx苦于调试,网上看了下大概配置: IE调用ocx调试配置,在当前ocx工程  run-->parameters-->host application 里面配置IE的程序 ...

  2. 用grunt搭建自动化的web前端开发环境实战教程(详细步骤)

    用grunt搭建自动化的web前端开发环境实战教程(详细步骤) jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用!前端自动化, ...

  3. unity导出工程导入到iOS原生工程中详细步骤

    一直想抽空整理一下unity原生工程导入iOS原生工程中的详细步骤.做iOS+vuforia+unity开发这么长时间了.从最初的小小白到现在的小白.中间趟过了好多的坑.也有一些的小小收货.做一个喜欢 ...

  4. VS2012+Win7网站发布详细步骤

    VS2012+Win7网站发布详细步骤 本机环境: 本文分三个部分介绍Web项目发布的常规方法,大神级别可以略过,主要是为了方便一些初学者. 第一部分:VS2012把项目发布到文件系统. 第二部分:I ...

  5. iOS开发之 xcode6 APP 打包提交审核详细步骤

    一. 在xcode6.1和ios10.10.1环境下实现app发布 http://blog.csdn.net/mad1989/article/details/8167529 http://jingya ...

  6. linux/centos下安装nginx(rpm安装和源码安装)详细步骤

    Centos下安装nginx rpm包                                                                                 ...

  7. (转载)Delphi开发经验谈

    Delphi开发经验谈 开发环境-------- Delphi 7是一个很经典的版本,在Win2000/XP下推荐安装Delphi 7来开发软件,在Vista下推荐使用Delphi 2007开发软件. ...

  8. Linux Makefile文件编写详细步骤与实践

    Linux Makefile文件编写详细步骤与实践 1.makefile概述 Windows环境下IDE会帮你完成makefile文件的编写,但在UNIX环境下你就必须自己写makefile了,会不会 ...

  9. JSP动态网站环境搭建应用中的详细步骤(Tomcat和Apache/IIS的整合)

    链接地址:http://www.cnblogs.com/dartagnan/archive/2011/03/25/2003426.html JSP动态网站环境搭建应用中的详细步骤(Tomcat和Apa ...

随机推荐

  1. 项目&lt;&lt;魔兽登录系统&gt;&gt;

    创建魔兽系统相关窗体: 登录窗体(frmLogin) 注册窗体(frmRegister) 主窗体   (frmMain) 实现魔兽登录系统: 登录的界面如下 实现思路: 1.创建一个对象数组,长度为1 ...

  2. 分区表/etc/fstab格式

    $ more /etc/fstabUUID=94e4e384-0ace-437f-bc96-057dd64f42ee / ext4 defaults,barrier=0 1 1tmpfs        ...

  3. 系统右键菜单添加剪贴板清空项(隐藏DOS窗口)

    @color 0A @title 系统右键菜单添加剪贴板清空项(隐藏DOS窗口) by wjshan0808 @echo off echo 请输入右键菜单名称 set /p name= ::创建本机A ...

  4. 使用.NET读取exchange邮件

    公司有个第3方的系统,不能操作源码修改错误捕获,但是错误会发一个邮件出来,里面包含了主要的信息.于是想从邮件下手,提取需要的数据 开始考虑使用的是exchange service,主要参考http:/ ...

  5. 微信小程序管理后台介绍

    微信小程序的管理后台,每次进入都需要扫码,还是特别不爽,现在微信小程序还没正式发布,很多人都还没看到管理后台,这里抢先发布出来 ------------------------------------ ...

  6. AC日记——将字符串中的小写字母换成大写字母 openjudge 1.7 13

    13:将字符串中的小写字母转换成大写字母 总时间限制:  1000ms 内存限制:  65536kB 描述 给定一个字符串,将其中所有的小写字母转换成大写字母. 输入 输入一行,包含一个字符串(长度不 ...

  7. activity 和 生命周期 :流程

    activity是android的一个基本的组件.讨论生命周期,taskstack等等的话题的时候.就不得不去看一下android framework层的源码了. 生命周期,实际就是系统调用andro ...

  8. 在 SharePoint 2013 中配置 Office Web Apps

    原文发布于 2012 年 7 月 23 日(星期一) 如您所知或您即将知道,SharePoint 2013 中的 Office Web Apps 不再是 SharePoint 场中的服务应用程序.相反 ...

  9. Watchdog

    一.简介 Watchdog主要用于监视系统的运行,Linux内核不仅为各种不同类型的watchdog硬件电路提供了驱动,还提供了一个基于定时器的纯软件watchdog驱动. 驱动源码位于内核源码树dr ...

  10. 荒木毬菜 小情歌日文版 - 独身OL之歌

    咎(とが)めるつもりもないけどtogameru tumorimo naikedo并不想责备在身旁 暇(ひま)してる时间(じかん)をhimashiteru jikan wo无所事事的时间 パジャマの鸟( ...