如何在Delphi中调用纯C的过程?100分相送 不改写程序能不能直接调用纯C的程序?如何?请给出例子,谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我想过改写程序为pascal的,但是好麻烦,好多类型变量需要转化! 大虾们谁用过类似的方法,请不吝赐教,有礼了!bow 可以先将C代码编译为.obj的目标文件然后就可以连接使用了,具体方法参考帮助! manboo的解答是正宗的方法,具体例子可参考delphi 6安装盘里Delphi6\Info\Extras\Zlib 我仍然认为做成DLL调用更好,以后程序升级也方便。 按照大虾说的,我看了帮助,按照里面的方法声明一个函数的原型,可是他老是报错,“unsatisfy forward or external declaration:add_test” add_test是里面的一个函数名。这是怎么回事呢? 切记用BC++编译,用TC编译的obj文件是16位的! 我想试试dll的调用,怎么做dll呢? New Items中找到DLL Wizard 多谢ehom关注,我看了有关的dll制作,现在我的dll是用CBuilder做的,然后在Delphi里调用,它老是抱错:无法定位输入点“函数名”于动态链接库“dll文件名”上,这如何是好? 调用的语句:unit Unit1;interfaceuses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;function myadd(a:integer;b:integer):integer;external 'Project1.dll';type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);var i:integer;begin i:=myadd(1,2); Edit1.Text:=inttostr(i);end;不知道这个调用有没有错误? 提个很菜的pas控件问题 求用ServerSocket和ClientSocket发送流的代码 [面对对象请教]虚函数可否被调用,谢谢! 如何将程序中统计后的数据显示在FastReport的报表中 如何对正在修改的数据进行锁定 没有工作 心情极度郁闷 散分 Delphi TTable.Delete问题 请问 PB和Delphi那一个更有“钱“途? 关于ClientSocket与ServerSocket的一个问题 老狼:祝假日愉快!我是老刺 memo + ADOQuery 的怪问题 批量执行sql,如果有错误,跃过去,在delphi中如何实现?在线等待!!
add_test是里面的一个函数名。这是怎么回事呢?
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;function myadd(a:integer;b:integer):integer;external 'Project1.dll';
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
i:=myadd(1,2);
Edit1.Text:=inttostr(i);
end;
不知道这个调用有没有错误?