VC6.0制作OCX并web调用 .
1.打开VC6.0,新建工程,选择:MFC ActiveX ControlWizard,后面步骤默认即可;
2.在ClassView上,可以看到主要有**App\**Ctrl\**ProgPage几个类,其中接口主要在**Ctrl内实现,可以通过MFC ClassWizard(ctrl+w快捷键)的Automation页建立接口函数;
3.接口函数是对外,因此在参数类型定义上要注意,字符我一般用LPCTSTR,如下面函数:
void COnOcxCtrl::CallOcx(LPCTSTR devip)
{
// TODO: Add your dispatch handler code here
AfxMessageBox(devip);
ip=devip;
Refresh();//重绘,调用ondraw()函数;
return;
}
4.OCX控件界面主要在OnDraw()函数内实现,可以内嵌到IE的,如果是独立对话框和Console是无法内嵌到IE,如:
CONST char* ip="127.0.1.1";
void COnOcxCtrl::OnDraw(
CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid)
{
// TODO: Replace the following code with your own drawing code.
pdc->FillRect(rcBounds, CBrush::FromHandle((HBRUSH)GetStockObject(WHITE_BRUSH)));
pdc->Ellipse(rcBounds);
pdc->TextOut(0,0,ip);
}
5.本案例主要实现:接口方法CallOcx接收一个IP地址,然后更新控件界面的IP显示;下步应研究如何利用OnDraw()内CDC绘制界面,满足与用户的交互;
对于**ProgPage(属性)和**Events(触发对容器响应的事件)的理解可参考http://www.cnblogs.com/jyz/archive/2008/04/11/1148476.html地址;
6.Web调用OCX的代码:
---------------------------------------------------------------------------------------------------------------------------------
<HTML>
<H1> MFC ActiveX Test Page </H1><p>
You should see your MFC forms or controls embedded in the form below.
<HR><center><P>
<input id="input1" value="CallActiveX" type="button" οnclick="CallOcx()">
<br>
<OBJECT id="devread" name="devread" classid="clsid:39F8ACC9-EF99-4B74-9C3C-EE50E5AD56C8" codebase="OnOcx.ocx" style="HEIGHT: 500px;WIDTH:500px"></OBJECT>
</HTML>
<script language="JavaScript" type="text/JavaScript">
function CallOcx()
{
//--初始化、装载样式文件
var iRes;
iRes = devread.CallOcx("172.30.88.66");
if(iRes==0)
{
alert("失败!");
}
}
</script>
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
下面研究如何封装成cab来提供给web调用;
参考:http://download.csdn.net/detail/fjssharpsword/4165589
VC6.0制作OCX并web调用 .相关推荐
- VC6.0制作OCX并web调用
1.打开VC6.0,新建工程,选择:MFC ActiveX ControlWizard,后面步骤默认即可: 2.在ClassView上,可以看到主要有**App\**Ctrl\**ProgPage几个 ...
- vc6.0制作窗体可嵌入IE内的OCX
1.vc6.0环境,新建:MFC ActiveX ControlWizard工程: 2.在建立的ActiveX工程中,插入dialog,在**ctrl类内增加关联该dialog的变量: 3.处理**c ...
- vc6.0 matlab混合编程,matlab2010 + vc6.0混合编程实例(调用dll)
不想解释太多直接上代码吧!!! 在对matlab配置后,上代码mcc -W cpplib:libMyAdd -T link:lib MyAdd -C就可以了,记得加上-C 在对VC6.0进行配置的时候 ...
- vc6.0 mfc一些函数明明调用语法正确,但是提示函数或者函数参数未定义等问题解决方法。
使用vc6.0 mfc 编写程序时一些函数在正常声明.调用的情况下提示函数参数未定义等问题时 如调用EnumDisplayMonitors()会提示下面问题 运行后,出现以下问题: Compiling ...
- VC6.0制作简单的avi视频播放器
目前,专门用于设计多媒体应用的软件很多.而VC6.0也提供了一种动画控件来实现简单多媒体动画文件的播放.我们创建一个基于对话框的工程,取名为player,具体步骤如下: 图1 用MFC AppWiza ...
- VC6.0和VS2005:C++和C#编写调用COM组件
这篇文章就是关于COM组件的编写和调用的,主要包含了使用VC6.0编写和调用COM组件,VS2005中使用C#编写和调用COM组件,以及在VC6.0和VS2005之间互相调用COM组件. AD: 前一 ...
- VC6.0 MFC 时钟运动 调用对话框设置时间
时钟运动 源码下载链接(免费) 问题描述 在VC6.0的MFC中画一个钟表,有时针.分针.秒针,并实现时针.分针.秒针的运动. 最终部分静态效果图如下: 操作详细过程 1.新建 1.打开VC6.0,点 ...
- VC6.0的MFC简单计算器制作
在VC中的计算器制作,我们开始要考虑的就是简单的计算器的是由什么构成的,有按钮,有显示框.按钮有数字的0~9部分还有小数点,,外加4个运算符号加减乘除,还有就是显示结果的等于号..可以的话可以加个清除 ...
- vc6.0 调用html,vc6.0使用教程
今天小编给大家讲解vc6.0使用教程,有需要或者有兴趣的朋友们可以看一看下文,相信对大家会有所帮助的. vc6.0使用教程 第一步,首先打开vc6.0软件,主界面如图所示. 第二步,新建工程(项目): ...
最新文章
- scapy windows install
- react-router 从 v2/v3 to v4 迁移(翻译)
- Linux内核中断底半部处理--工作队列
- Java数据结构习题_算法分析
- python如何强制转换数据类型_python数据类型强制转换实例详解
- Educational Codeforces Round 81 (Rated for Div. 2) D. Same GCDs 欧拉函数\莫比乌斯
- 机器人总动员中的小草_机器人总动员观后感(精选4篇)
- 137、易燃固体的分级
- Ubuntu日常使用命令记录
- EPICS记录参考--Sequence记录(seq)
- android 设置路由器,安卓手机怎么设置路由器?
- (四)GNSS定位中的距离测量(模糊度固定LAMBDA算法)
- Emgucv摄像头使用
- 【调剂】2020年东北石油大学非常规油气研究院--赵小青老师课题组招生
- Gee引擎常用功能简介
- HP DL380G9 iLO降级Degrated及存储失败storage Failed报错如何解决?
- 脱壳--02.exe
- Python图像处理1:导入图像
- 图解 Redis String 底层数据结构 SDS 与计数器实战
- 玩转AgileCDN(十一)——小工单,大作用
热门文章
- 好文推荐,15 分钟教你搞懂 Git!
- 2022新冠两大毒王合体?印媒炒作高危变异毒株缝合怪「Delmicron」
- 蛰伏7年!他一天发表两篇Nature,还曾是曹原的师弟!
- 一块只要4美元,超廉价版树莓派诞生,还用上了自研芯片
- 嫌弃YouTube推荐算法,这位小哥决定自己动手写代码来推荐视频
- 什么是CNN?写给小白的机器学习入门贴,Facebook员工打造,47k访问量
- ICLR 2020 | 如何解决图像分类中的类别不均衡问题?不妨试试分开学习表征和分类器...
- 90后教授:回国是用数学计算出的“最优解”
- Mysql高级调优篇——前言简介
- celery中间件:broker