簡體   English   中英

將VB6 ActiveX DLL引用添加到VS2008項目

[英]Add a VB6 ActiveX DLL reference to a VS2008 project

在工作中,我們有一個VB6項目(ActiveX DLL),我們需要能夠添加它作為另一個VS2008 C#項目的參考。

那里的開發人員告訴我,在過去,他們已經能夠這樣做,但現在我們對VB6 DLL進行了更改,並且必須重新編譯它。

因此,我們需要更新VS2008項目中的引用,但是當我們嘗試將對VB6 DLL的引用(在刪除舊引用之后)添加到VS2008項目時,我們得到一個黃色的“!” 在新添加的引用上的圖標,然后在我們構建時,VS2008表示無法找到引用。

我嘗試了“瀏覽”和“COM”選項卡,您可以在其中添加引用,沒有運氣。

我們是否需要某種TLB才能添加它?

謝謝。

您需要從命令提示符執行以下操作:

#CD to wherever the dll is located
regsrv32 /u foo.dll
regsrv32 foo.dll

這將取消注冊舊的com對象並注冊新的com對象。

他是對的,你可以從命令提示符那樣做。

但請記住,您的Active-X控件DLL可能是16位,因此請使用

    regsrv /u foo.dll
    regsrv foo.dll

從命令提示符。 但32位適用於regsrv32!

我使用了OLE / COM對象查看器(包含在Windows SDK 6.0A中)然后我在“所有對象”中看到了一堆COM條目,即:MyDLLName.className和一些指向不再存在的DLL文件。 刪除了Windows注冊表中指向已刪除的DLL的所有相關COM條目,並將所有指向現有DLL的條目留下,然后我可以在VC#項目中成功導入它。

暫無
暫無

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

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