我
我需要充电
Unregistered / Unconfirmed
GUEST, unregistred user!
pb调用delphi写的dll,其中有一个参数是数组,但pb提示错误:
bad runtime function reference
其中pb的调用方式是:li_Rtn = FSendEmail(1, StrArgs)
pb中的声明:
FUNCTION int fsendemail(int v1, ref string v2[]) Library "E:/MyProgram/dll/PSdEmail_dll.dll"
---------
delphi的代码是:
library PSdEmail_dll;
uses
SysUtils,
Classes,
Dialogs,
UEmail in 'UEmail.pas';
{$R *.res}
function FSendEmail(const v1: integer; v2: array of string):integer;StdCall;
var
iLowIndex, iHighIndex: Integer;
i: Integer;
StrAry: array of string;
begin
SetLength(StrAry, 10);
iLowIndex := Low(v2);
iHighIndex := High(v2);
For i := iLowIndex to iHighIndex do
begin
ShowMessage(v2 + '-The index is ' + IntToStr(i));
end;
Result := v1;
end;
exports
FSendEmail;
end.
bad runtime function reference
其中pb的调用方式是:li_Rtn = FSendEmail(1, StrArgs)
pb中的声明:
FUNCTION int fsendemail(int v1, ref string v2[]) Library "E:/MyProgram/dll/PSdEmail_dll.dll"
---------
delphi的代码是:
library PSdEmail_dll;
uses
SysUtils,
Classes,
Dialogs,
UEmail in 'UEmail.pas';
{$R *.res}
function FSendEmail(const v1: integer; v2: array of string):integer;StdCall;
var
iLowIndex, iHighIndex: Integer;
i: Integer;
StrAry: array of string;
begin
SetLength(StrAry, 10);
iLowIndex := Low(v2);
iHighIndex := High(v2);
For i := iLowIndex to iHighIndex do
begin
ShowMessage(v2 + '-The index is ' + IntToStr(i));
end;
Result := v1;
end;
exports
FSendEmail;
end.