vb.net - 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 文件,我会收到“找不到入口点”消息。
为了实现我想要的,我缺少什么?
谢谢
解决方案
推荐阅读
- kubernetes - kubectl apply -f service.yml 抛出错误
- c - 通过 x11 中的抓取窗口记录事件
- ethereum - 以太坊智能合约。我可以屏蔽/隐藏合同创建者地址吗?如果可以,我需要吗?
- python - 根据索引的字典/映射替换熊猫列中的值
- matlab - 优化涉及 for 循环的 matlab 代码
- python - 如何计算 Python 3 中字典字典中特定值的次数
- flutter - 在 Flutter 中使用控制器设置文本时 TextField 光标不移动
- python-3.x - 为什么在尝试使用 PyPDF2 进行“水印”时,此代码不能按“预期”工作?
- php - html中带有选项卡的PHP标头位置
- python - 如何使用来自预训练 MLP 的最后一个隐藏层权重作为 Keras 的新 MLP(迁移学习)的输入?