我需要后期绑定到 3.5 C# 应用程序中的第 3 方 VB6 COM 对象(以避免我们当前拥有的版本依赖关系)。提供的 dll 在大多数非后期绑定方式中都不能使用,因为一些错误会在我们尝试正常使用它时导致错误。目前,我们正在使用一个自定义的 VB6 包装器,它使事情非常特定于版本,但是我发现我可以使用后期绑定来访问属性和方法。现在,我正在尝试后期绑定事件,但是我读过的所有内容都说我需要从 COM 包装器的接口继承来创建所需的事件接收器。这是一篇这样的文章。
所以,我的问题是是否可以在编译时不引用 dll 的情况下执行后期绑定事件处理?
更新
这是我在使用 VB6 包装器时遇到的错误(仍在积极更新中)。
- 在 OleViewer 中,我得到
无法反编译所选项目 加载类型库/DLL 时出错。TYPE_E_CANTLOADLIBRARY ($80029C4A)
- 在 Visual Studio 中,我得到:
无法确定 COM 引用“3rdPartyDLL”的依赖关系。加载类型库/DLL 时出错。(来自 HRESULT 的异常:0x80029C4A (TYPE_E_CANTLOADLIBRARY))