我正在进行一些原型设计,插入一个重要的传统C ++应用程序。我使用C#来做这个概念证明(最终我将用C ++编写库)。我在我的C ++应用程序和.net类库之间设置了一个COM接口,并且能够在它们之间传递字符串和整数。它们会在适当时自动编组(例如,托管字符串转到BSTR *)。
我现在已经在我的COM接口中添加了一个返回List<String>
的新方法。我认为生成的方法类型将返回 BSTR *(BSTR **)的数组和计数 SAFEARRAY,但是当我查看IDL(使用oleview)时,此接口方法不会甚至出现。我猜测COM框架不确定List<String>
是什么样的,所以我的选择是什么?只使用字符串[]?
我没有使用C ++ / CX,我不能。
由于