首页 文章

无法添加COM DLL作为VS 2012 Project的参考

提问于
浏览
0

我正在尝试添加使用Visual Studio .NET 2003 ATL COM项目构建的COM DLL,当我点击浏览并选择DLL时出现以下错误

A reference to 'MyCOM.dll' could not be added. Please make sure that the file is accessible, and that it is a valid assembly or COM component.

但是当我使用 RegSvr32.exe 注册它并使用参考窗口中的COM窗格浏览它并添加它时,它工作正常 .

如何在不注册的情况下添加dll?

1 回答

  • 1

    这不是那么容易实现,因为COM总是使用注册表来查找DLL . 在代码中,您只使用其GUID而不是文件系统中的位置来引用库 . 幸运的是,这不完全正确(更多) . 绕过这有两种可能性:

    • 使用Reg-Free COM,这要求您向可执行文件添加清单 . 这包含注册信息而不是注册表 . 谷歌免注册COM和清单 .

    • 通常,也可以通过普通方式链接dll(使用lib文件)并使用简单的新调用创建"COM" -Object . 但这要求您拥有完整的头文件 . 而且它不再使用COM了 .

相关问题