////////////dll文件
library MyDLL;uses
SysUtils,
Classes;{$R *.RES}function getDbPass(var a:pchar):integer;stdcall;
begin
a:='sasa';
result:=1;
end;exports
getDbPass;begin
end.////////////////调用
function getDbPass(var a:pchar):integer;stdcall;External 'MyDLL.dll';procedure TForm1.Button1Click(Sender: TObject);
var b:pchar;
begin
label1.caption:=inttostr(getDbPass(b));
label2.Caption :=b;
end;调用是正确的,为何出现“Invalid pointer operation"错误!
急!!!!
在线等待
library MyDLL;uses
SysUtils,
Classes;{$R *.RES}function getDbPass(var a:pchar):integer;stdcall;
begin
a:='sasa';
result:=1;
end;exports
getDbPass;begin
end.////////////////调用
function getDbPass(var a:pchar):integer;stdcall;External 'MyDLL.dll';procedure TForm1.Button1Click(Sender: TObject);
var b:pchar;
begin
label1.caption:=inttostr(getDbPass(b));
label2.Caption :=b;
end;调用是正确的,为何出现“Invalid pointer operation"错误!
急!!!!
在线等待
var b:pchar;
begin
getmem(b,255);
label1.caption:=inttostr(getDbPass(b));
label2.Caption :=b;
end;
还是出现那个错误提示
再请教
var b:pchar;
begin
getmem(b,255);
label1.caption:=inttostr(getDbPass(@b));
label2.Caption :=b;
end;