首页 > 解决方案 > Visual Studio 2019 - VB - 创建可注册的 COM 对象

问题描述

我一直在尝试创建一个 dll 文件,该文件可以被其他应用程序使用 Visual Studio 2019 注册和使用,但无济于事。这是我到目前为止所做的:

创建类库:

<ComClass(MyClass.ClassId, MyClass.InterfaceId, MyClass.EventsId)>
Public NotInheritable Class MyClass
    
    Public Const ClassId As String = "5C15AC97-E0DD-4D3B-A5F4-834360A1EB31"
    Public Const InterfaceId As String = "70C153A6-2576-4C6A-91FB-1AC07D7985CE"
    Public Const EventsId As String = "1030DA19-642D-42D0-877C-29BBBF5FC45C"

... rest of class definition with a constructor

在属性中:应用程序-> 程序集信息,我检查了选项“使程序集 COM 可见”编译,我检查了“注册 COM 互操作”选项

我有 1 个错误和 1 个警告:错误:无法注册类型库 \MyClass.tlb。访问 OLE 注册表时出错(是因为我的机器上没有管理员权限吗?) 警告:\MyClass.dll 不包含任何可以为 COM 互操作注册的类型。

我想做的是构建我的解决方案,检索 dll 文件,将其存储在我拥有管理员权限的另一台计算机上并注册它,以便我可以在另一个应用程序中使用我的对象,就像我以前在VB6天。如果我尝试注册生成的 dll 文件,我会收到“找不到入口点”消息。

为了实现我想要的,我缺少什么?

谢谢

标签: vb.netdllvisual-studio-2019dllregistration

解决方案


推荐阅读