[英]Initial Object Reference for OLE Automation Object with constructor
我正在嘗試連接通過.TLB導出與自動化兼容的接口的庫。
TLB在接口內部列出了function
,以檢索對象引用; .TLH包含這些作為非靜態成員函數,這使我很難在沒有對象引用的情況下調用它們; 因此,我在這里有一些雞和蛋的問題。
從C ++調用function
的正確方法是什么?
在.tlb文件上使用#import
,然后使用適當的智能指針類型的CreateInstance()
方法實例化該對象,然后僅調用成員函數。
像這樣(省略錯誤處理):
#import ThatTlbFile.tlb
//at some point in your code you have to init COM
CoInitialize(0);
// once COM is initialized
IInterfaceOfInterestPtr object;
// this will ask COM to instantiate an object
object.CreateInstance( __uuidof( ComClassOfInterest ) );
object->CallMethod();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.