先谢了!

解决方案 »

  1.   

    那你就是着用.net做个组件吧。
      

  2.   

    asp.net下是托管代码,调用COM组件是有写差别的,你确定代码没有问题吗?
      

  3.   

    .net中应该也可以调用com组件的
      

  4.   

    http://comcamp.myrice.com/techarticles/com/2013.htm
    看看对你有没有用
      

  5.   

    因为还未完全解决问题,先散20分!
    COM组件中属性如下:
    VRRIANT m_VarPZSJ;
    void CNewWritePZ::SetPZSJ(const VARIANT FAR newValue) 
    {
    if((newValue.vt&VT_ARRAY)==0)
    return;
    if((newValue.vt&VT_VARIANT)==0)
    return;
    if(newValue.vt&VT_BYREF)
    SafeArrayCopy(*(newValue.pparray),&m_VarPZSJ);
    else
    SafeArrayCopy(newValue.parray,&m_VarPZSJ);
    }
    然后用SafeArray方法得到各项的值。
    在VB.NET中用如下调用方法:
            Dim tt As New LiwSoft.NewWritePZ()
            Dim A(11)
            A(0) = "123"
            A(1) = "123"
            A(2) = "123"
            A(3) = "123"
            A(4) = "123"
            A(5) = "123"
            A(6) = "123"
            A(7) = "123"
            A(8) = "123"
            A(9) = "123"
            A(10) = "123"
            tt.PZSJ = A
    其中最後一行报错,说类型不匹配。用ASP调用是正确的。
    还有,如何在用aspx调用的情况下调试组件?
      

  6.   

    这个问题你在这里问怎么可以,应该到.net版块中啊
    类型不匹配是不是因为你使用了不适合.net公共语言环境的类型?
    在.net下调用使用非托管代码写的组件使用DllImport导入,然后声明static类型函数