原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/50782904

 vs2010开发activex(MFC)控件:
     第一步:生成activex控件
    


     第二步:添加对话框资源及其他控件,添加对话框类,设置对话框属性




     
第三步:
    

添加WM_CREATE事件,选择”<添加>OnCreate”,以初始化对话框对象。

int CTest_jsCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (COleControl::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO:  在此添加您专用的创建代码
m_MyDlg.Create(IDD_DIALOG1,this);  //初始化对话框
return 0;
}
OnDraw函数中添加绘制对话框的代码
// CTest_jsCtrl::OnDraw - 绘图函数
void CTest_jsCtrl::OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid){
if (!pdc)
return;
// TODO: 用您自己的绘图代码替换下面的代码。
//pdc->FillRect(rcBounds, CBrush::FromHandle((HBRUSH)GetStockObject(WHITE_BRUSH)));
//pdc->Ellipse(rcBounds);
m_MyDlg.MoveWindow(rcBounds,true);
}
 

 
 
 
   编译,生成ocx,编写测试的html文件:
   html中加载ocx控件的方法:
<BODY>
<OBJECT ID="Test_js" WIDTH=50% HEIGHT=35% 
 CLASSID="CLSID:80F40FB1-7366-4D8E-B2E9-B765E6740F98">
    <PARAM NAME="_Version" VALUE="65536">
    <PARAM NAME="_ExtentX" VALUE="2646">
    <PARAM NAME="_ExtentY" VALUE="1323">
    <PARAM NAME="_StockProps" VALUE="0">
</OBJECT>
上述中的CLASSID:
 
    完整的html测试文件:
   

  1. <HTML>
  2. <HEAD>
  3. <TITLE>测试:js传参数给ie插件</TITLE>
  4. <meta http-equiv="Content-Type" content="text/html; charset=GBK" />
  5. <SCRIPT LANGUAGE="JavaScript">
  6. function GetDeviceinfo()
  7. {
  8. if (Input1.value!="")
  9. {
  10. Test_js.paramer1= Input1.value;
  11. }
  12. //alert(Test_js.paramer1);
  13. if (Input2.value!="")
  14. {
  15. Test_js.paramer2= Input2.value;
  16. }
  17. if (Input3.value!="")
  18. {
  19. Test_js.paramer3= Input3.value;
  20. }
  21. if (Input4.value!="")
  22. {
  23. Test_js.paramer4= Input4.value;
  24. }
  25. }
  26. function Test()
  27. {
  28. var p1=Test_js.paramer3;
  29. var p2=Test_js.paramer4;
  30. var a=Test_js.add(p1,p2)
  31. alert(a);
  32. }
  33. </SCRIPT>
  34. </HEAD>
  35. <BODY>
  36. <OBJECT ID="Test_js" WIDTH=50% HEIGHT=35%
  37. CLASSID="CLSID:80F40FB1-7366-4D8E-B2E9-B765E6740F98">
  38. <PARAM NAME="_Version" VALUE="65536">
  39. <PARAM NAME="_ExtentX" VALUE="2646">
  40. <PARAM NAME="_ExtentY" VALUE="1323">
  41. <PARAM NAME="_StockProps" VALUE="0">
  42. </OBJECT>
  43. <p></p>
  44. Inputparamer1: <INPUT TYPE ="text" NAME="Input1" VALUE="">
  45. Inputparamer2: <INPUT TYPE ="text" NAME="Input2" VALUE="">
  46. Inputparamer3: <INPUT TYPE ="text" NAME="Input3" VALUE="">
  47. Inputparamer4: <INPUT TYPE ="text" NAME="Input4" VALUE="">
  48. <p></p>
  49. <INPUT TYPE="button" NAME="输入数据"
  50. VALUE="测试js传参数: " ONCLICK=GetDeviceinfo()>
  51. <INPUT TYPE="button" NAME="测试"
  52. VALUE="测试js调用activex接口函数: " ONCLICK=Test()>
  53. </BODY>
  54. </HTML>

注意:对话框上的控件及处理,跟普通对话框一样不再说明。

测试结果:

 
 

vs2010开发activex(MFC)控件/ie插件(一)的更多相关文章

  1. 用delphi开发activex打印控件

    http://blog.csdn.net/baronyang/article/details/4465468

  2. VC2005从开发MFC ActiveX ocx控件到发布到.net网站的全部过程

      开篇语:最近在弄ocx控件发布到asp.net网站上使用,就是用户在使用过程中,自动下载安装ocx控件.(此文章也是总结了网上好多人写的文章,我只是汇总一下,加上部分自己的东西,在这里感谢所有在网 ...

  3. 用ATL开发和部署ActiveX网页控件

    用ATL开发和部署ActiveX网页控件 摘 要 ActiveX插件技术广泛的运用于B/S系统中,本文通过一个项目实例,详细介绍用ATL开发和部署ActiveX网页控件的过程.学习使用ActiveX让 ...

  4. VS2010中如何实现自定义MFC控件

    本文简要讲解在VS2010中怎样实现自定义MFC控件的知识,以下是分步骤说明. 一.自定义一个空白控件  1.先创建一个MFC工程 NEW Project-->MFC-->MFC Appl ...

  5. 【VS开发】免费打工仔:一个完善的ActiveX Web控件教程

    作者 David Marcionek. 翻译 免费打工仔 这个教程可以帮助你快速开发一个ActiveX控件.其中将要讲解关于ActiveX开发的一些基础概念,诸如方法(method).属性(prope ...

  6. C# activex开发中 axwebbrowser控件及 IE浏览器设置

    <object type='application/x-vlc-plugin' id='vlc' events='True' codebase='../cab/axvlc.cab' classi ...

  7. 关闭是否只查看安全传送的网页内容提示框 和 是否允许运行软件,如ActiveX控件和插件提示框

    关闭是否只查看安全传送的网页内容提示框 最新编写 爬虫程序,运行程序后,电脑就总是出现下面这个提示框,一遍遍点"是"或"否"繁琐又麻烦.我看得有点不耐烦了.于是 ...

  8. 一个完善的ActiveX Web控件教程

    免费打工仔:一个完善的ActiveX Web控件教程 出自Ogre3D开放资源地带   跳转到: 导航, 搜索 原作者 David Marcionek. 翻译 免费打工仔 这个教程可以帮助你快速开发一 ...

  9. vs2010中的ADO控件及绑定控件

    要在项目中添加某一个ActiveX控件,则该ActiveX控件必须要注册.由于VS2010中,并没有自动注册ADO及ADO数据绑定控件(Microsoft ADO Data Control,Micro ...

随机推荐

  1. 主流服务器虚拟化技术简单使用——Hyper-V(二)

    当在多台Windows Server上部署了hyper-v的时候,需要采用合适的方法管理这些hyper-v节点. 远程桌面 最简单的方法就是逐台远程桌面登陆Windows Server,再使用每台本地 ...

  2. vue学习(转载)

    vue.js库的基本使用 第一步:下载 官网地址:https://cn.vuejs.org/v2/guide/installation.html 第二步:放到项目的文件目录下 一般新建一个js文件夹, ...

  3. Hibernate的抓取策略(优化)

    延迟加载的概述 什么是延迟加载 延迟加载:lazy(懒加载).执行到该行代码的时候,不会发送语句去进行查询,在真正使用这个对象的属性的时候才会发送SQL语句进行查询. 延迟加载的分类 l  类级别的延 ...

  4. Golang框架beego和bee的开发使用

    Golang语言简洁.明细,语法级支持协程.通道.err,非常诱惑人.平时也看了看Golang的语法,正苦于没有需求,我想把beego的源码搬过来看看. 首先,第一步:beego环境的搭建 在我之前看 ...

  5. (转)linux基本变量学习:位置变量$0 、$1 shift轮替、本地变量、环境变量、特殊变量

    原文:http://blog.51cto.com/woyaoxuelinux/1863045 shell: 弱类型编程语言 强:变量在使用前,必须事先声明,甚至还需要初始化: 弱:变量用时声明,甚至不 ...

  6. Git学习系列之经典的Git开发过程

     前言 Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. 分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上 ...

  7. python输出不换行

    python输出不换行 Python2的写法是: print 'hello', Python3的写法是: print('hello', end='') 对于python2和python3都兼容的写法是 ...

  8. MySql的索引操作

    索引是一种特殊的数据库结构,可以用来快速查询数据库表中的特定记录.索引是提高数据库性能的重要方式.MySQL中,所有的数据类型都可以被索引.MySQL的索引包括普通索引.唯一性索引.全文索引.单列索引 ...

  9. Ubuntu apache

    Linux系统为Ubuntu 1. 启动apache服务 # /etc/init.d/apache2 start 2. 重启apache服务 # /etc/init.d/apache2 restart ...

  10. jQuery ajax async

    jQuery 同步调用: jQuery.ajax({ type:'POST', async: false, url:'qcTask/add', contentType:'application/jso ...