change VARIANT to BSTR, in .h file, .cpp file, and the idl/odl file, it should work.

解决方案 »

  1.   

    to masterz:
    参数先选择VARIANT ,再把VARIANT 改成BSTR吗?
      

  2.   

    可是
    DISP_FUNCTION( theClass, pszName, pfnMember, vtRetVal, vtsParams )中的第四项vtsParams的选项值:
    VTS_BSTR对应的是 LPCSTR
    VTS_VARIANT 对应的是VARIANT
      

  3.   

    没错传字符串就是用LPCSTR,用它传入不用做任何转换
    传出字符串时用BSTR*  需要掉用系统函数作相应转换。好像是SYSALLOCSTRING有点急不清了。传字符串应该不会有什么问题呀?