Главная Информер Журнал Форум Wiki DRKB Discuz!ML Помощь проекту




Как получить все Dial-Up соединения

Способ 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('\RemoteAccess\Profile', False) then
  begin
    Reg.GetKeyNames(OutList);
    Result := True;
  end
else begin
Result := False;
end;
Reg.Free;
end;

 

Способ 2 - через RASApi:

Для этого воспользуемся функцией Use RASEnumConnections.
Далее можно определить состояние каждого соединения при помощи RASGetConnectStatus.
Так же можно использовать RASEnumEntries для получения всех сервисов из определённой телефонной книжки.

Толька для этого потребуется преобразовать заголовочный файл RAS.h в эквивалент Delphi.