簡體   English   中英

如何在Win32 C ++項目Visual Studio 2010中使用ActiveX dll

[英]How to use ActiveX dll in win32 C++ project visual studio 2010

背景:供應商向我提供了ActiveX Dll,沒有頭文件或.tlb文件或類似文件。 我正在使用Visual Stdio 2010和Win32 C ++。

我面臨的問題是如何加載或引用dll?

我無法通過解決方案資源管理器引用該dll,因為它是非托管項目。 當我嘗試使用#import時,它給了我編譯錯誤,提示未找到XXX.tlb文件。 但是我沒有.tlb類型的文件。 我嘗試的另一個選項是使用OLE查看器打開dll,然后復制dll定義,然后粘貼到使用Visual Studio創建的.idl擴展文件中。 然后,我在idl文件上執行了midl以創建.h文件,但這也無濟於事。 當我嘗試使用這些類時,它給我“無法使用或引用抽象類”錯誤。

在此問題上還有其他問題要問,但並非直截了當,答案也未標記為已回答或已被贊成。

我想知道在Visual Studio 2010的win32 C ++項目中可用來加載ActiveX dll的方法有哪些,何時應首選哪一種? 如果確實有一個線程可以解決我的問題,請指出。

謝謝

如果您能夠使用OLE View看到接口定義,則意味着類型庫已嵌入dll資源中。 因此,如果您使用#import "YourActiveX.dll"它應該可以工作。

你需要

  1. 使用regsvr32在Windows中注冊COM(Active X)組件: regsvr32 my_dll.dll
  2. 然后使用COM與組件進行交互。 是一個很好的教程

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM