...get names of available comm ports?

Author: Simon Grossenbacher
Homepage: http://www.swissdelphicenter.ch

Category: System

{
  Show the names of available comm ports (com1, com2, ...)
  Used registry key: hkey_local_machine\hardware\devicemap\serialcomm
}

uses
  
Registry;

procedure TForm1.Button1Click(Sender: TObject);
var
  
reg: TRegistry;
  st: Tstrings;
  i: Integer;
begin
  
reg := TRegistry.Create;
  try
    
reg.RootKey := HKEY_LOCAL_MACHINE;
    reg.OpenKey('hardware\devicemap\serialcomm', False);
    st := TstringList.Create;
    try
      
reg.GetValueNames(st);
      for i := 0 to st.Count - 1 do 
        
Memo1.Lines.Add(reg.Readstring(st.strings[i]));
    finally
      
st.Free;
    end;
    reg.CloseKey;
  finally
    
reg.Free;
  end;
end;

 

printed from
www.swissdelphicenter.ch
developers knowledge base