同一个组件中定义两个接口,比如 IFiles,IFileIFiles 中有一个方法 Add(LPDISPATCH *file);
还有一个方法 GetFile(int index, LPDISPATCH ** file);请问这样参数定义正确吗?如果不对,哪样才是正确的。
方法里面怎样操作才可以把 IFile 添加进去~~。 然后把 IFile 取出来~~

解决方案 »

  1.   


    同一个组件中, 直接传 IFile 就可以了Add(IFile *pFile); 
    GetFile(int index, IFile ** ppFile);用IDISPATCH的话 LPDISPATCH 已经是 IDISPATCH * 了
    Add(LPDISPATCH  pFile); 
    GetFile(int index, LPDISPATCH * ppFile); 
      

  2.   

    直接传递IFile*或者用IDISPATCH* 来转换成IFile*指针..
      

  3.   

    谢谢两位~~在 idl 文件中也可以直接写吗?[id(2), helpstring("method Add")] HRESULT Add([in] IFile *pFile);
      

  4.   

    接口等,可以使用IDISPATCH接口等通用类型比较好