C++调用ocx

1、保证ocx已正常注册,可以使用

2、创建一个C++的命令行程序,在主程序
#import "HZ_KevinTest.ocx" no_namespace

生成一次程序,debug目录下就会有类似的两个文件
HZ_KevinTest.tlh
HZ_KevinTest.tli

3.把这两个文件拷贝到源代码的位置,将第一个文件的扩展名修改为.h,调整主程序的代码,注释刚才的import语句,include刚才的.h文件,类似如下
//#import "HZ_KevinTest.ocx" no_namespace 
#include "HZ_KevinTest.h"
另外的HZ_KevinTest.tli相当于CPP文件,我自己测试的ocx生成的一个方法会带了产生异常代码,我自己手工调整tli里的代码,让其不异常。至此ocx已在代码的控制下了。

4.生成实例。因为import的时候使用了smart pointer,所以com的生成只需

IHZ_KevinTestPtr pMyocx(__uuidof(HZ_KevinTest));

好了,似乎还可以用。还好N年前买的一本书。刚才上网想找类似的书重新学习一下,发现Com+一类的书已成恐龙级别了。期待有人推荐一两本

以下是我自己测试的头部引入的内容

#include <iostream>
#include <windows.h>
#include <cassert>
#include <stdexcept> #include <iostream> //#import "HZ_MyTest.ocx" no_namespace
#include "HZ_KevinTest.h"
using namespace std;

这里有更多的方式,自己也在学习中

https://blog.csdn.net/u011555996/article/details/76073157

可惜现在找不到新书来学习C++来开发Com了

上一篇:**PHP二维数组遍历时同时赋值


下一篇:JavaScript AJAX