相关疑难解决方法(0)

将字符串数组从VB6传递到C#.net

如何通过COM Interop将VB6字符串数组[假设,s =数组("a","b","c","d")]传递给C#.Net?

我试图实现将C#字符串数组传递给VB,将VB字符串数组传递给C#,如下所示C# - > VB工作正常但其他方式(VB => C#)给出一个编译错误,称为"函数或接口标记为受限制,或者函数使用Visual Basic中不支持的自动化类型".我的代码如下

C#

    public interface ITest   
    { 
         string[] GetArray();
         void SetArray(string[] arrayVal );
    }

    public class Test : ITest 
    {
        string[] ITest.GetArray() {                                //Working fine
            string[] stringArray = { "red ", "yellow", "blue" };
            return stringArray;
        }
    }

    void ITest.SetArray(string[] arrayVal) //Giving an issue
    {
       string[] stringArray1 = arrayVal;
    }
Run Code Online (Sandbox Code Playgroud)

VB

 Dim str As Variant
    Debug.Print ".NET server returned: "    
    For Each str In dotNETServer.GetArray      'dotNETServer=TestServer.Test
            Debug.Print str
    Next

    Dim …
Run Code Online (Sandbox Code Playgroud)

c# vb6 com interop com-interop

6
推荐指数
1
解决办法
4223
查看次数

标签 统计

c# ×1

com ×1

com-interop ×1

interop ×1

vb6 ×1