level 4
前方有快乐😄
楼主

难道是程序不对吗?procedure TForm1.findport1Click(Sender: TObject);
var
reg: TRegistry;
ts: TStrings;
i: integer;
begin
ts := TStringList.Create;
reg := TRegistry.Create;
reg.RootKey := HKEY_LOCAL_MACHINE;
reg.OpenKey('hardware\devicemap\serialcomm',true);
reg.GetValueNames(ts);
memo1.Lines.AddStrings(ts);
for i := 1 to ts.Count -1 do
begin
ComboBox1.Items.Add(reg.ReadString(ts.Strings[i]));
comindex[i]:=strtoint(reg.ReadString(ts.Strings[i])[4]);
Memo1.Lines.Add(reg.ReadString(ts.Strings[i]));
end;
ts.Free;
reg.CloseKey;
reg.free;
end;
procedure TForm1.openport1Click(Sender: TObject);
var
ComSetting:String;
begin
if not MSComm1.PortOpen then
begin
MSComm1.commPort:=comindex[ComboBox1.ItemIndex+1]; //串口号
ComSetting:=ComboBox2.text; //波特率
MSComm1.Settings:=Comsetting+',N,8,1';
MSComm1.PortOpen:=True;
MSComm1.InputMode:=comInputModeBinary;
openport1.Caption:='close port';
end
else begin
MSComm1.PortOpen:=False;
openport1.Caption:='open port';
end;
end;
