自动化服务器的function返回值只能是:HRESULT????(50分)

  • 主题发起人 主题发起人 puppyboy
  • 开始时间 开始时间
P

puppyboy

Unregistered / Unconfirmed
GUEST, unregistred user!
在《Delphi COM深入编程》,自动化服务器的function的返回类型可以
是以前兼容类型,但是我在delphi6中操作时却只能是HRESULT!
各位大虾,只是什么原因呢???
 
选中你的function,在要作为返回参数上面的 Type类型后面加 * 号,然后在Modifier那双击,
选中RetVal,就可以了。
 
存在就是合理的,问Borland
 
function只能用他的参数返回吗?不能直接是他的返回值???
 
当某个参数在Modifier那里有RetVal的选项时,它在Pascal中就是返回值了,可以象普通的
function 一样使用的。
你在类型库编辑器中按F12,会看到你定义的function在接口中的Pascal语法定义的
 
COM中的接口返回值都是标准的。不能随便定义,但是正如szf所说,想用哪个标准类型然后
加个*就可以了。
 
改为:
BSTR 对应 WideString,也就是delphi的string
OLEVariant 对应 Variant,可以返回 TDate等
我是这么做的

--------
http://www.8421.org
 
接受答案了.
 
后退
顶部