原文: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. C# 连接Oracle 11g 无需安装Oracle客户端

    1.首先到Oracle网站上下载ODAC 下载地址1:http://download.csdn.net/detail/easyboot/9456476 下载地址2:http://www.oracle. ...

  2. Linux下配置redis,c#简单调用

    redis比较流行的nosql库: 我这里测试本机window系统,虚拟机安装linux系统,linux系统部署redis,windwo系统,c#调用linux系统的redis 第一步:linux下安 ...

  3. apk包不能生成的原因之debug.keystore

    在Eclipse里面编译生成的APK中有一个签名的,它默认的key是debug.keystore,它默认的路径是: C:\Users\<用户名>\.android\debug.keysto ...

  4. UML-6.2-用例-用例模型/用例/场景关系

    参与者:具有某些行为的人或事物.如上一章中的收银员. |_主要参与者:收银员. |_协助参与者:程序(自动付费.帮收银员验证输入要素) |_幕后参与者:政府等(电子签章取证找公证机构) 用例:一组相关 ...

  5. mysql 03

    CREATE TABLE class(    empno INT,    ename VARCHAR(4),    job VARCHAR(4),    mgr INT,    hiredate DA ...

  6. Java基础27-单例设计模式

    /* 设计模式:针对此类问题最有效的解决方法 java23种设计模式 单例设计模式:解决一个类只在内存中存在一个对象 如何让一个类在内存中只存在一个对象? 1.禁止其他的应用程序,通过此类来创建对象 ...

  7. fastclick源码分析

    https://www.cnblogs.com/diver-blogs/p/5657323.html  地址 fastclick.js源码解读分析 阅读优秀的js插件和库源码,可以加深我们对web开发 ...

  8. DataTable对象

    DataTable表示一个内存中的关系数据表,可以独立创建和使用,也可以有其他.NET Framework对象使用,最常见的情况是作为DataSet的成员使用.DataTable对象由DataColu ...

  9. django notes 三:Template 的查找

    django 中有 2种 Template Loader django.template.loaders.filesystem.Loader django.template.loaders.app_d ...

  10. DateTime.Now与DateTime.Today的区别

    区别如下图: DateTime.Now: 不仅显示日期 还显示当前时间: DateTime.Today: 只显示当前日期,没有时间