如何使具有二维数组的 COM 对象中的函数在安捷伦 VEE 中可见

本文关键字:VEE 函数 何使具 二维数组 COM 对象 | 更新日期: 2023-09-27 18:30:47

我有一个COM对象(C#,Visual studio),其函数将二维数组作为in参数。当我想通过安捷伦访问此功能时,VEE 在功能和对象浏览器中不可见,也无法访问。如果我将数组更改为单维,则立即变得可见。

我听说 VEE 不适合处理二维数组,但应该有一个解决方法。

有人知道如何从 vee 中显示具有二维数组的 com 对象吗?此致敬意AK

如何使具有二维数组的 COM 对象中的函数在安捷伦 VEE 中可见

COM

自动化支持 SafeArray 作为数组的包装类型。 COM 的 CLR 互操作层会从 C# 数组类型自动生成它们。 但它们等效于多维数组,而不是交错数组。 数组的数组没有等效的自动化类型,它们将公开为变体的单维数组,其中每个变体都是一个数组。

足以绊倒COM客户端,也许,语法变得毛茸茸的。

好的,找到了,当然是在发布问题两分钟后。我将我的数组声明为交错数组,

int [][] array = new [][];并将其更改为int[,] array = new int [,];

现在它工作了!