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

最近项目中利用ocx封装了底层视频播放及处理的控件,以供c#和web调用。对ocx的属性、方法和事件刚入门,对ocx上控件和容器的参数传递和数据交互等问题,纠结了很久,虽然最终项目上的问题都解决了,但是对ocx的自定义消息还是搞不定。写几篇ocx入门的博文,记录一下。
        IDE:vs2010,64位win7系统。 
        关于c++开发ocx讲解详细的博文:http://blog.csdn.net/frankiewang008/article/details/7890032。里面关于ocx属性、方法和事件讲的非常详细。具体的添加属性,事件就不写了,直接贴个截图和完整的demo例子,以备以后忘记。这里只是简单记录一下学习过程,ocx都是基于mfc的,首先测试了一下vc++深入详解中的时间控件例子。代码下载c++深入详解中的ocx时间控件 测试时间控件:测试时间控件的c++代码
           1.ocx的调试:vs自带的TstCon.exe(在D:\Program Files (x86)\Microsoft Visual Studio10.0\Samples\2052\VC2010Samples\C++\MFC\ole\TstCon\Debug下,没有的话编译一下工程,就会生成) 。或者直接在c++、c#、web容器下测试
           2.ocx的添加属性、方法、事件和消息的位置,新手注意。
           
        3.ocx生成后的注册:vs2010下生成ocx后会自动注册,如果没有注册,可利用win自带的regsvr32进行注册或反注册。
如:注册:regsvr32 C:\Users\Administrator\Desktop\博客\My_ocx1\Release\My_ocx1.ocx
     反注册: regsvr32 C:\Users\Administrator\Desktop\博客\My_ocx1\Release\My_ocx1.ocx  /u
     注意:
       1.实际项目开发中要考虑ocx需要的dll或其他文件,把生成ocx的相关dll和配置文件放在一个路径下注册,否则可能会失败
       2.要考虑win下32位还是64位系统,最好把ocx和相关dll等放在在系统目录下。
      32位系统目录:C:\Windows\System32
      64位系统目录:C:\Windows\SysWOW64
      3.实际中可能还需要以管理员方式运行cmd。
       
        4.ocx控件在c++/c#中的添加
    
5.简单测试
 

c++开发ocx入门实践一的更多相关文章

  1. c++开发ocx入门实践三--基于opencv的简易视频播发器ocx

    原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/51404649  利用opencv做了个简易的视频播放器的ocx,可以在c++/c#/web ...

  2. c++开发ocx入门实践二

    原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/51374355         IDE:vs2010,c++,测试工具,vs自带的TstCo ...

  3. c++开发ocx入门实践四

    总结一下参数传递和方法调用的方法,ocx和容器进行参数传递,包括ocx和js,ocx和c++,ocx和c#.

  4. sass、less和stylus的安装使用和入门实践

    刚 开始的时候,说实话,我很反感使用css预处理器这种新玩意的,因为其中涉及到了编程的东西,私以为很复杂,而且考虑到项目不是一天能够完成的,也很少是 一个人完成的,对于这种团队的项目开发,前端实践用c ...

  5. iOS 非ARC基本内存管理系列 -手把手教你ARC——iOS/Mac开发ARC入门和使用(转)

    手把手教你ARC——iOS/Mac开发ARC入门和使用 Revolution of Objective-c 本文部分实例取自iOS 5 Toturail一书中关于ARC的教程和公开内容,仅用于技术交流 ...

  6. 【转】iOS 开发怎么入门?

    原文网址:http://www.zhihu.com/question/20264108 iOS 开发怎么入门? 请问有设计模式.内存管理方面的资料吗?最好有除了官方文档之外的其它内容,10 条评论 分 ...

  7. Django入门实践(二)

    Django入门实践(二) Django模板简单实例 上篇中将html写在了views中,这种混合方式(指Template和views混在一起)不适合大型开发,而且代码不易管理和维护,下面就用Djan ...

  8. C++ 开发OCX 的方法和注意事项

    C++ 开发OCX 的方法和注意事项 前言 ActiveX控件是一种实现了一系列特定接口而使其在使用和外观上更象一个控件的COM组件.ActiveX控件这种技术涉及到了几乎所有的COM和OLE的技术精 ...

  9. 20162330 实验三 《敏捷开发与XP实践》 实验报告

    2016-2017-2 实验报告目录: 1 2 3 4 5 20162330 实验三 <敏捷开发与XP实践> 实验报告 课程名称:<程序设计与数据结构> 学生班级:1623班 ...

随机推荐

  1. Android Fragment实现微信底部导航

    1.XML布局 (1)主界面 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout x ...

  2. 进阶篇:4.3)DFA设计指南:防错设计( 防呆设计)

    本章目的:每一个装配步骤都有设计防错. 1.前言 关于防错设计,作者有想说的话: 1)防错设计是DFA重要的一条.因为太过重要,作者单独开一分章写! 2)只有理解了设计防错的重要,才会去设计防错特征. ...

  3. 【算法笔记】B1045 快速排序

    1045 快速排序 (25 分)   著名的快速排序算法里有一个经典的划分过程:我们通常采用某种方法取一个元素作为主元,通过交换,把比主元小的元素放到它的左边,比主元大的元素放到它的右边. 给定划分后 ...

  4. Sklearn,TensorFlow,keras模型保存与读取

    一.sklearn模型保存与读取 1.保存 from sklearn.externals import joblib from sklearn import svm X = [[0, 0], [1, ...

  5. pipenv 虚拟环境新玩法

    首先,虚拟环境本质是一个文件,是为了适应不同的项目而存在.pipenv相当于virtualenv和pip的合体. pipenv主要有以下特性: (1)pipenv集成了pip,virtualenv两者 ...

  6. 使用chart.js時取消懸浮在圖表頂部的'undefined'標識

    解決方法:在options中設置legend項中display屬性為false options: { scales: { yAxes: [{ ticks: { beginAtZero: true } ...

  7. python - 斐波那契(Fibonacci)数列

    斐波那契数列即数列中每一项等于它前面两项的和,公式如下: f(n) = f(n-1) + f(n-2)    n>2        -----        递推公式 f(n) = 1     ...

  8. 如何在vue中请求本地json文件

    1..修改webpack.base.conf.js 文件中添加'/static': resolve('static'),如下所示,此时存放于static的json文件就可以通过/static/xxx. ...

  9. Axure原型设计介绍

    在第八周的课堂上,王文娟老师在校园系统上发布了对于自行选择的原型设计软件进行资料查找以及自学的任务.因为之前的课程学习需要,我们大概掌握了原型设计软件Axure的使用,下面是一些我们学习过程中的介绍 ...

  10. java设计模式之桥梁模式(Bridge)

    1.桥梁模式 与 策略模式 非常相似 (其实很多设计模式都相似,因为所有的模式都是按照设计原则 而设计出来的,设计原则就相当于武功的心法,设计模式就是招式,只要心法过硬,就可以无招胜有招了.) 这里也 ...