ActiveX 方法怎么返回自定义结构体 DISP_FUNCTION怎么写?

解决方案 »

  1.   

    IDL中要定义这个结构,而且只能在进程内使用
      

  2.   

    DISP_FUNCTION * -> VOID * -> DISP_FUNCTION *
      

  3.   


    用的是家里的电脑,ACTIVEX的方法里不是有很多种返回值可选吗?都是指针,就当VOID *传送好了。
      

  4.   

    最好是把这个结构定义成接口,在COM中用起来才方便
      

  5.   

    在idl文件中如下定义interface IUser : IDispatch{
    [propget, id(1), helpstring("property moo")] HRESULT moo([out, retval] BSTR* pVal);
    [propput, id(1), helpstring("property moo")] HRESULT moo([in] BSTR newVal);};HRESULT foo([in] IUser * pUser);然后分别实现IUser 和 foo
      

  6.   

    建立ActiveX工程等,VC就会帮你生成IDL文件,然后可以自己修改添加接口等