你可以编写3个函数来实现呀;
query(lpstr)
movenext()
getcurrentrecord()
这样不就可以得到一个记录集了吗,我想这样实现应该没问题,不知道你的问题是不是能这样解决.

解决方案 »

  1.   

    给个EMail
    我发个我写的一个例子程序吧
      

  2.   

    能不能捎带给我呢??[email protected]!!我的要求是,能传递一个数组!!可不可以呢,谢谢!!alphagx(alpha) 这为仁兄!!谢谢了!!
      

  3.   

    你是要返回一个数组吗??我直接写在下面吧。
    IDL中的定义为:
    [id(1), helpstring("method Test")] HRESULT Test([out,retval]VARIANT *Var);
    实现为:
    STDMETHODIMP CTestArray::Test(VARIANT *Var)
    {
            VariantInit (Var);
    Var->vt = VT_ARRAY ¦ VT_I4; // Array of integers
    SAFEARRAY* psa;
    // 10 elements numbered 0-9
    SAFEARRAYBOUND bound = { 10, 0 }; 
    psa = SafeArrayCreate (VT_I4, 1, &bound);
    if (psa == NULL)
    return E_OUTOFMEMORY;
    for (long i=0; i<10; i++)
    SafeArrayPutElement (psa, &i, &i);
    Var->parray = psa;
    return S_OK;
    }
    这样就OK了 
      

  4.   

    alphagx(alpha)兄,我的Email是[email protected],我想要一份返回Recordset的,最好把注释写全一点,一定给分!
      

  5.   

    那就请Rigel(红雪)回答以下好啦。可以吗?