找回密码
 欢迎注册
楼主: 疯猪

[讨论] delphi调用hugecalc.dll问题

[复制链接]
 楼主| 发表于 2008-6-26 08:31:45 | 显示全部楼层
如何翻译.h直接封装dll
求教
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-6-26 09:47:29 | 显示全部楼层
你下载的目录有win32api 目录
里面两个问题件
hugecalc.c
hugecalc.h

对照hugecalc.h和hugecalc.c

HHUGEINT HI_generatePrime( HHUGEINT hHugeInt, const UINT32 u32Bits );

你这么写
function HI_generatePrime(HHUGEINT hHugeInt, const UINT32 u32DecDigits): HHUGEINT; stdcall; external 'hugecalc.dll';

这时,缺少个UINT32的定义
type
    UINT32 = integer;
    HHUGEINT = ^integer;

然后把需要的#define转换成const定义

再编译,肯定缺少一堆定义,你再想法子一个个照上面的转化
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-6-26 17:08:28 | 显示全部楼层
谢谢,努力进行中
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-6-26 17:20:06 | 显示全部楼层


呵呵,工作量很大哦
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-6-26 17:30:38 | 显示全部楼层
还是不懂,烦恼
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-6-26 17:32:02 | 显示全部楼层
就没有办法简单调用吗?越简单越好
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-6-26 17:37:05 | 显示全部楼层
应该是最简单的了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-6-26 21:41:13 | 显示全部楼层
帮楼主搜到一篇文章:计算机世界网-Delphi中如何调用VC++创建的动态链接库
里面有在Delphi中调用VC++创建的动态链接库的实例,包括隐式调用和显式调用,
而HugeCalc.dll已包含类似该文MaxMin.DLL的导出接口方式,楼主完全可以自己参照之进行。
(虽然,我一直认为用tlb会更简化操作流程,可惜你,

如果你仍无法成功,那我实在无话可说了。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-6-26 21:45:36 | 显示全部楼层
TLB是调ActiveX的方法
但ActiveX会涉及到很多OLE数据转化
而且最终还要调用DLL

还不如直接调DLL
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-6-26 21:52:23 | 显示全部楼层
先撇开运行效率不讲,
TLB无须用户再写声明等,导入成本非常低,
即对编程者要求门槛很低。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-25 06:52 , Processed in 0.045883 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表