在ASP.NET中这样调用:
Dim obj As Object
obj = CreateObject("LiwSoft.Test")
Dim A(2)
Dim msgPZ As String
A(0) = "1234"
A(1) = "4321"
obj.PZSJ = A
obj = nothing
以上代码工作正常,但如果采用添加引用的方法即:
Dim obj As New LiwSoft.TestClass()
其余代码相同,则会出现远程调用错误!
我的VC代码如下:
void CNewWritePZ::SetPZSJ(const VARIANT FAR& newValue) 
{
  VARIANT m_varPZSJ[2];
  if((newValue.vt&VT_ARRAY)==0)
    return;
  if((newValue.vt&VT_VARIANT)==0)
    return;
  if(newValue.vt&VT_BYREF)
  {
    for(long i=0;i<2;i++)
      SafeArrayGetElement(*(newValue.pparray),&i,&m_VarPZSJ[i]);
  }
  else
  {
    for(long i=0;i<2;i++)
      SafeArrayGetElement(newValue.parray,&i,&m_VarPZSJ[i]);
  }
}
在用引用方式调用时,得不到正确的值。请指点!