各位好:
调用DLL时 遇到这个问题,请问如何修改,谢谢!刚接触不久 还请多多指教
dll源码和调用源码如下:
dll:
function Initial(buf:Pbyte;var buflength:longint):longint;stdcall;
var
s:array[0..15]of byte;
begin
buflength:=0;
result:=0;
try
s[0]:=$EB;
s[1]:=$90;
s[2]:=$82;
s[3]:=$00;
s[4]:=$00;
s[5]:=$00;
s[6]:=$00;
s[7]:=$00;
s[8]:=$00;
s[9]:=$00;
s[10]:=$00;
s[11]:=$00;
s[12]:=$00;
s[13]:=$00;
s[14]:=$00;
s[15]:=$00;
buf:=Pbyte(@s);
buflength:=16;
except
result:=99; //未知错误
end;
end;调用源码:
procedure TForm1.Button1Click(Sender: TObject);
var buf:array[0..20]of byte;
bufLength:longint;
r:longint;
buf1:pbyte;
begin
buf1:=pbyte(@buf);
r := Initial(buf1;bufLength);edit1.Text:=inttostr(r);
end;
调用DLL时 遇到这个问题,请问如何修改,谢谢!刚接触不久 还请多多指教
dll源码和调用源码如下:
dll:
function Initial(buf:Pbyte;var buflength:longint):longint;stdcall;
var
s:array[0..15]of byte;
begin
buflength:=0;
result:=0;
try
s[0]:=$EB;
s[1]:=$90;
s[2]:=$82;
s[3]:=$00;
s[4]:=$00;
s[5]:=$00;
s[6]:=$00;
s[7]:=$00;
s[8]:=$00;
s[9]:=$00;
s[10]:=$00;
s[11]:=$00;
s[12]:=$00;
s[13]:=$00;
s[14]:=$00;
s[15]:=$00;
buf:=Pbyte(@s);
buflength:=16;
except
result:=99; //未知错误
end;
end;调用源码:
procedure TForm1.Button1Click(Sender: TObject);
var buf:array[0..20]of byte;
bufLength:longint;
r:longint;
buf1:pbyte;
begin
buf1:=pbyte(@buf);
r := Initial(buf1;bufLength);edit1.Text:=inttostr(r);
end;
改成Initial(buf1,bufLength);
分号改逗号,不仔细