procedure TForm1.scanport;
VAR
i,j:INTEGER;
sz:array of integer;
begin
j:=0;
setlength(sz,8);
for i:=1 to 9 do
begin
if MSComm1.portopen=True then MSComm1.PortOpen :=false;
MSComm1.CommPort :=i ;
try
MSComm1.PortOpen:=true;
MSComm1.PortOpen :=false;
showmessage('com'+inttostr(I)+'打开');
sz[j]:=I;
inc(j);
except
end;end;
我把这段代码放在exe 中执行没有问题,但在dll 中反应太迟钝!,请指教!!
VAR
i,j:INTEGER;
sz:array of integer;
begin
j:=0;
setlength(sz,8);
for i:=1 to 9 do
begin
if MSComm1.portopen=True then MSComm1.PortOpen :=false;
MSComm1.CommPort :=i ;
try
MSComm1.PortOpen:=true;
MSComm1.PortOpen :=false;
showmessage('com'+inttostr(I)+'打开');
sz[j]:=I;
inc(j);
except
end;end;
我把这段代码放在exe 中执行没有问题,但在dll 中反应太迟钝!,请指教!!
不过如果你只是为了用 MSComm,还是不要用 FORM 了,直接声明一个变量动态创建就行了。