2

我有一个带有一个公共类和几个私有类的 .NET 程序集。

我正在尝试为 COM 互操作注册它,以便我可以使用以下命令从 VBA 调用它:

regasm /tlb foo.dll /codebase

随后,当我在 Visual Studio 的“对象浏览器”中打开该.tlb文件时,我看到该库没有公开任何类型。

有什么想法吗?

我意识到这里没有太多具体信息,所以如果你让我知道什么对诊断有用,我会尽力提供。

4

2 回答 2

2

我必须用 标记我的公共类型[ComVisible(true)]

于 2010-06-22T18:34:51.177 回答
0

有两件事可以帮助:

  1. 我不认为 VS2008 对象浏览器允许查看从 .NET 程序集生成的 tlb 文件——我建议使用iTripoli 的类型库查看器以确保您诊断出正确的问题;
  2. 尝试使用该/verbose选项,看看Regasm遇到了什么样的问题。
于 2010-06-25T07:18:05.023 回答