Вверх ↑
Администрация
Ответов: 15295
Рейтинг: 1519
#1: 2008-06-19 00:02:55 ЛС | профиль | цитата
вот такой способ имеется

#pas
// Заполнение items всеми активными соединениями:

procedure FillConnections();
var
conns: LPRasConn;
ConnCount, bufsize: longint;
i: integer;
status: TRASCONNSTATUS;
begin
bufsize := 0;
// Определение количества активных соединений:
RasEnumConnections(nil, bufsize, ConnCount);
if ConnCount > 0 then
begin
// Выделение памяти:
GetMem(conns, bufsize);
conns^.Size := sizeof(TRasConn);
// Заполнение conns информацией об активных соединениях:
RasEnumConnections(conns, bufsize, ConnCount);
status.dwSize := sizeof(TRasConnStatus);
// Заполнение items названиями соединений:
for i := 0 to ConnCount - 1 do begin
// conns^.szEntryName - имя соединения
// conns^.szDeviceType- тип
// conns^.szDeviceName - имя устройства
RasGetConnectStatus(conns^.hrasconn, status);
// status.rasconnstate - статус
// status.dwError - ошибки
inc(conns);
end;
// Освобождение памяти:
dec(conns, ConnCount);
FreeMem(conns);
end;
end;
карма: 27
0