解决方案 »

  1.   

    http://stackoverflow.com/questions/852397/passing-arrays-as-parameters-in-vb6
      

  2.   

    经过测试的确是这样:
    将下面这个代码:
    'Module1.bas
    Option ExplicitPublic oClass As Class1Public Sub Add(ByRef newArray() As Byte)
     Set oClass = New Class1
     oClass.myArray() = newArray() '<- This kills VB6 dead
     MsgBox "passed"
    End Sub
    改成如下代码后成功运行:
    'Module1.bas
    Option ExplicitPublic oClass As Class1Public Sub Add(ByRef newArray() As Byte)
     Dim tempArray() As Byte'中间数组
     Set oClass = New Class1
     tempArray() = newArray()'先交换
     oClass.myArray() = tempArray() '交换成功
     MsgBox "passed"
    End Sub