delphi调用C写的dll,无法调用多数组参数的函数
C实现的dll函数
extern "C" void __declspec(dllexport) Init(int *tx, double *ty)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
for(int i=0;i<5;i++)
{
tx[i] = 1+i;
ty[i] = 1.1+i;
}
}
delphi声明
procedure Init_1(x: array of integer; y: array of double);cdecl;
procedure Init_1;external '111.DLL' name 'Init';
delphi调用procedure Form1.ButtonClick(Sender: TObjec)
var
tx: array [0..4] of integer;
ty: array [0..4] of double;
begin
Init_1(tx, ty);
end;
问题:调用 Init_1报错。dll的Init函数参数去掉一个,然后delphi相应调用1个参数的Init_1就正确。怎么回事?
extern "C" void __declspec(dllexport) Init(int *tx, double *ty)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
for(int i=0;i<5;i++)
{
tx[i] = 1+i;
ty[i] = 1.1+i;
}
}
delphi声明
procedure Init_1(x: array of integer; y: array of double);cdecl;
procedure Init_1;external '111.DLL' name 'Init';
delphi调用procedure Form1.ButtonClick(Sender: TObjec)
var
tx: array [0..4] of integer;
ty: array [0..4] of double;
begin
Init_1(tx, ty);
end;
问题:调用 Init_1报错。dll的Init函数参数去掉一个,然后delphi相应调用1个参数的Init_1就正确。怎么回事?
...全文
相关推荐
Delphi 几种常见的Dll调用方法l
Delphi7 调用DLL几种常见的方法源码。
PowerBuilder调用Delphi写的Dll时发生的奇怪问题。
因项目需要,我用Delphi写了一个连接数据库把数据导出到Sql文件的dll,其中使用了TADOQuery组件。其中只有一个导出方法:function DataExport(path,ini_path:PChar):integer; 写完之后,用delphi写了一个test.exe进行测试,发现可以正常使用。之后便把这个dll交给了同事,让他在PowerBuilder中调用。同事拿过去之后
delphi调用C# DLL
delphi调用C# DLL
delphi中动态链接库中函数的调用,DLL
使用Delphi编写静态调用动态链接库(DLL),完成三个数的大小对比,求出最大值,最小值。
C#调用Delphi dll库文件
C#调用Delphi dll库文件,分别用函数和存储过程写的两种方法 在c#2013调试成本DELPHI7写的DLL文件


语言基础/算法/系统设计
