скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Получить список установленных модемов в Win95-98



У диалапера спрашивают:
- А что ты тестируешь, качество связи с новым провайдером?
- Нет, свои нервы... сколько они еще смогут выдержать этот коннект!!!


unit PortInfo;

interface

uses
  Windows, SysUtils, Classes, Registry;

  function EnumModems: TStrings;

implementation

function EnumModems : TStrings;
var
  R : TRegistry;
  s : ShortString;
  N : TStringList;
  i : integer;
  j : integer;
begin
  Result:= TStringList.Create;
  R:= TRegistry.Create;
  try
    with R do
    begin
      RootKey:= HKEY_LOCAL_MACHINE;
      if OpenKey('\System\CurrentControlSet\Services\Class\Modem', False) then
        if HasSubKeys then
        begin
          N:= TStringList.Create;
          try
            GetKeyNames(N);
            for i:=0 to N.Count - 1 do
            begin
              closekey; { + }
              openkey('\System\CurrentControlSet\Services\Class\Modem', false);
              OpenKey(N[i], False);
              s:= ReadString('AttachedTo');
              for j:=1 to 4 do
                if Pos(Chr(j+Ord('0')), s) > 0 then
                  Break;
              Result.AddObject(ReadString('DriverDesc'),TObject(j));
              CloseKey;
            end;
          finally
            N.Free;
          end;
        end;
    end;
  finally
    R.Free;
  end;
end;

end.






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook