相关疑难解决方法(0)

通过COM可见DLL从VB6调用.NET方法

我创建了一个.NET DLL,它使一些方法COM可见.

一种方法是有问题的.它看起来像这样:

bool Foo(byte[] a, ref byte[] b, string c, ref string d)
Run Code Online (Sandbox Code Playgroud)

当我尝试调用该方法时,VB6给出了编译错误:

标记为受限制的函数或接口,或者该函数使用Visual Basic中不支持的自动化类型.

我读过数组参数必须通过引用传递,所以我改变了签名中的第一个参数:

bool Foo(ref byte[] a, ref byte[] b, string c, ref string d)
Run Code Online (Sandbox Code Playgroud)

VB6仍然提供相同的编译错误.

如何更改签名以与VB6兼容?

.net arrays vb6 com assemblies

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

.net ×1

arrays ×1

assemblies ×1

com ×1

vb6 ×1