Способ 1 - из реестра:
uses Registry; function DUNGetConnections(out OutList: TStringList): Boolean; var Reg: TRegistry; begin OutList.Clear; Reg := TRegistry.Create; Reg.RootKey := HKEY_CURRENT_USER; if Reg.OpenKey('RemoteAccessProfile', False) then begin Reg.GetKeyNames(OutList); Result := True; end else Result := False; Reg.Free; end;
Способ 2 - через RASApi:
Для этого воспользуемся функцией Use RASEnumConnections.
Далее можно определить состояние каждого соединения при помощи RASGetConnectStatus.
Так же можно использовать RASEnumEntries для получения всех сервисов из определённой телефонной книжки.
Толька для этого потребуется преобразовать заголовочный файл RAS.h в эквивалент Delphi.