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了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM