如何在c#中更新/更改已注册的COM的接口

本文关键字:注册 COM 接口 更新 | 更新日期: 2023-09-27 18:12:57

我在c#中创建了一个用户控件(作为一个类库)。现在我已经注册了这个类(使用regasm),我可以在VBA用户表单上使用这个控件。所有的方法、事件和属性都按预期工作。但是当我试图向接口添加新方法时,我无法在VBA中看到它们。是否可以更新已经注册的COM接口?

如何在c#中更新/更改已注册的COM的接口

看情况。

COM接口通常被认为是不可变的。"正确"的方法是创建一个新的接口IWhatever2,扩展现有的具有新方法的IWhatever

然而,如果你还没有发布这个(也就是说,它还在开发中,你是唯一一个使用它的人),你可以删除和替换接口。你需要注销现有的接口(regasm /u),并给你的"新"接口一个新的GUID,并再次注册。