使用DELPHI开发COM组件,
新建一个ACTIVELIB工程,再添加一个COM OBJECT
输入CLASS名称,系统弹出TYPELIB编辑器,
添加一个方法,带一个参数,该参数的作用是返回一个字符串,
现在的问题是,我不知道怎么定义这个参数的类型,
设置为BSTR,OUT, 系统提示输出参数必须为POINTER,
再设置为LPSTR,OUT,RETVAL,还是同样的提示
我都不知道该怎么办了,望高手帮忙.
如果解决,高分送上,谢谢各位.

解决方案 »

  1.   

    设置成VARIANT* 变体类型,并且是返回型的[in,out],就可以了,
      

  2.   

    用 yinfaxin 的方法。
    或:
      参数 modifier 为 out , 类型为 wideString也可以。
      

  3.   

    正解应该是 Wolf2005 说的如果COM的客户端是ASP,那么就需要定义成Variant类型
    如果是普通窗口程序等,那么就可以用BSTR
      

  4.   

    返回值必须是指针
    你要是返回widestring
    就写成bstr*
    选择OUT,RETVAL
    就没问题了。
    com的参数设置是通用的
    没有给delphi 一一对应
    具体要看情况
    这是我的 msn :[email protected]