这是接口的2个函数
[helpstring("获得变量值")] virtual HRESULT STDMETHODCALLTYPE GetDataValue(/*[in]*/ BSTR bstrSymble,/*[out, retval]*/ VARIANT* value) = 0;
[helpstring("设置变量值")] virtual HRESULT STDMETHODCALLTYPE SetDataValue(/*[in]*/ BSTR bstrSymble,/*[in]*/ VARIANT value) = 0;
我查了一下需要写了一个类继承此接口并重写了这两个函数,但是调用的时候怎么掉用?VARIANT value这个变量我该用什么参数?value不是接口送过来我需要得到的数据吗?为什么是函数的变量?

解决方案 »

  1.   

    从写这个函数的话就是。你先找这个函数的原型什么样的。然后在你的函数中继承这个类。在写一个这样的函数。
    至于。你说的variant value 应该是得到的数据。在你这个函数里面。进行使用的。就和消息一样。消息进来的参数。转换一下你自己就可以使用了。!!!
      

  2.   

    能不能麻烦你用代码说明下 如何调用getdata把数据传给一个控件端的变量x?我不是搞软件的好多不太懂
      

  3.   

    getdata 是mfc的winsocket控件吗?
    这是一个。mfc的winsocket 控件的接收例子。
    void CTest_UDPDlg::OnDataArrivalWinsock1(long bytesTotal) 
    {
    unsigned char  msg[256];
    VARIANT type;
    VARIANT maxLen;
    COleVariant data;
    CString str;
    type.vt = VT_I4;
    type.lVal = VT_BSTR;
    maxLen.lVal = bytesTotal;m_ctrlUDPSock.GetData(&data, type, maxLen);
    _bstr_t instr;
    instr = data;
    memcpy(msg, instr.operator const char*(),bytesTotal);
    }希望对你有用