Delphi如何查看cport状态?

时间:2016-08-24 05:58:14

标签: delphi

如何使用ComLed或标签显示Enabled / Disabled来检查cport状态。

我已经尝试If Cport1.Connected then 但它并不能让我满意,即使我没有,状态仍然在告诉我已经连接。

这里有没有人有更好的解决方案?

注意:我使用计时器检查端口状态。

1 个答案:

答案 0 :(得分:1)

如果我理解您的问题,首先您应该通过以下代码找到连接到您设备的端口:

Procedure FindPorts(S:TStrings);
var
  r:TRegistry;
  i:Integer;
Begin
  R:=TRegistry.Create(KEY_READ);
  R.RootKey:=HKEY_LOCAL_MACHINE;
  if R.OpenKey('HARDWARE\DEVICEMAP\SERIALCOMM',False) then
  Begin
    R.GetValueNames(S);
    for i:=0  to S.Count-1 do
      S[i]:=R.ReadString(S[i]);
  End;
  R.CloseKey;
End;