引入类型库时类型不对

风轻狂 2002-06-03 04:45:52
引入其它语言(VC6)做的COM类型库时类型不对,
function fun1:HResult;stdcall
变成了
procedure fun1:safecall;
请问为什么,在线等待
...全文
48 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
一点点凋落 2002-06-14
  • 打赏
  • 举报
回复
Delphi中好象要指定out,retval才可以得到返回HResult的函数。
lesstif 2002-06-13
  • 打赏
  • 举报
回复
Delphi就是这样的,你在类型库中指明HResult为返回值类型,在实现中就是procedure了,然后,你在VC中导入这个类型库就又是HResult了,Delphi就是这么变态,不过,我还是喜欢Delphi啊!!!
lesstif 2002-06-13
  • 打赏
  • 举报
回复
Delphi就是这样的,你用HResult的时候,发现实现中都是procedure,在用Visual C++导入类型库发现有变成了HResult了,Delphi就是这么变态,不过,我还是喜欢Delphi啊
风轻狂 2002-06-04
  • 打赏
  • 举报
回复
to TommyTong(童童)
我也有这种想法,所以卸载了Delphi
重新装过,加入了对Corba的支持,可还是不能正确的引入,
而同样的操作系统,同样的Delphi引入同样的COM,别的机器上却可以正确引入,不知原因为何呀
风轻狂 2002-06-04
  • 打赏
  • 举报
回复
to TommyTong(童童)
我也是这么想的,
可为什么有的机器可以正常的引入呢
一样的操作系统,一样的Delphi 引入同样的COM
却出现不同的结果
netlib 2002-06-03
  • 打赏
  • 举报
回复
up
netlib 2002-06-03
  • 打赏
  • 举报
回复
好象没有什么问题。
墨梅无痕 2002-06-03
  • 打赏
  • 举报
回复
问题就出在对IDL的实现上,你可能知道,现在强势的IDL实现有两种:
MIDL(Microsoft)和CORBA IDL(CORBA)。
我想问题就出在这个上面。
风轻狂 2002-06-03
  • 打赏
  • 举报
回复
这么用当然没问题,我的意思是为什么Delphi不能正确引入类型库
而有些机器上可以正确引入,我现在都是自己改写引入后的_TLB文件,很烦
lxpbuaa 2002-06-03
  • 打赏
  • 举报
回复
应该是没问题的。如果实在不行,只有Copy代码过来了!

—————————————————————————————————
MaximStr := '宠辱不惊,看庭前花开花落,去留无意;
毁誉由人,望天上云卷云舒,聚散任风。';
if Not Assigned(I) then
I := TI.Create(Nil);
I.Maxim := MaximStr;
I.Explain := '假如上述代码中出现“OA”、“3D”等字样,改为“=”或者去掉';
I.Desire := '加不加分随你';
—————————————————————————————————


风轻狂 2002-06-03
  • 打赏
  • 举报
回复
应该是:
procedure fun1;safecall;
有一台机器上可以正确引入成:
function fun1:HResult;stdcall
而其它机器都不行,不知为什么

墨梅无痕 2002-06-03
  • 打赏
  • 举报
回复
似乎没有错。
只是在fun1之后":",是不是你打字时打错了?
dreamfan 2002-06-03
  • 打赏
  • 举报
回复
UP

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧