问题描述:原来用VC写的一个模块封装成DLL其中一个函数参数类型为CArray,在C#我该用什么数据类型去调用这个CArray类型的参数呢???或者有没有其他的解决办法???先谢谢啦!!
PS:ArrayList类型试过,不好用:(

解决方案 »

  1.   

    直接使用Array不行么?
    如果不行就使用 object mObject = CArray();
                   Array mArray = (Array)mObject;使用装箱,拆箱可以解决吧。
      

  2.   

    不行啊,你最好封装为 variant 型!(safeArray mabye~)
      

  3.   

    Array不行啊,CArray传回来的东西大小是不确定的,在C#里边用Array的话需要定一个超大的数组,这个这个好像有点不太好吧。
    object mObject = CArray();//这个CArray是什么冬冬,麻烦给讲讲好么
    Array mArray = (Array)mObject
    PS:CArray的性质有点像ArrayList都是动态数组,只是一个是VC里边的模板类,一个是C#里边的引用类型
      

  4.   

    variant 嗯,好像有可行性!!偶查查相关的文档看看:—)
      

  5.   

    using System.Runtime.InteropServices; [DllImport("shell32.dll")]  //加载你要使用的DLL文件
    public static extern int 你要使用的函数。
    ===============================
        CSDN小助手 是一款脱离浏览器也可以使用csdn论坛的
    软件!
        界面: http://qqwwee.com/
        下载: http://qqwwee.com/csdn.rar 包含源代码