![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
RasEnumConnections в цикле?
Alians © (2006-11-20 17:21:00)RasEnumConnections из RASAPI выводить количество активных удаленных подключений и их состояние при этом заполняется структура RASSCONN но вот что делать если подключений больше одного ведь когда передаешь RASSCONN как массив ругается на SIZE:
type
RASCONN = record
dwSize:LongWord;
HRASCONN:integer;
szEntryName:array[1..RAS_MaxEntryName + 1] of char;
szDeviceType:array[1.. RAS_MaxDeviceType + 1 ]of char;
szDeviceName:array[1.. RAS_MaxDeviceName + 1 ]of char;
szPhonebook:array [1.. MAX_PATH ]of char;
dwSubEntry:LongWord ;
guidEntry:integer;
dwSessionId:LongWord;
dwFlags:LongWord;
luid:integer;
end;
var
OutRasEum:integer;
RasConns: RASCONN;
RasConSiz,lpcConnections :integer;
begin
zeromemory(@RasConns,sizeof(RasConns));
RasConns.dwSize:=sizeof(RASCONN);
handldlli:=loadlibrary('rasapi32.dll');
@rasenumconne:=getprocaddress(handldlli,'RasEnumConnectionsA');
OutRasEum:=rasenumconne(@RasConns,@RasConSiz,@lpcConnections );
Alians (2006-11-20 20:48:00) [1]
> OutRamEum:=RasEnumConne(p,@RasConSiz,@lpcConnections);
Ага, правильно и у меня и здесь он не получал размер в RasConSiz всего массива
Sam Stone (2006-11-20 19:37:00) [2]> [1] Sam Stone © (20.11.06 19:16)
ЗЫ
проглядел, что надо задавать RASCONN.dwSize, но, в принципе, все так же.
Sam Stone (2006-11-20 19:16:00) [3]
type PRASCONN = ^RASCONN;
var p:pointer;
OutRamEum:=RasEnumConne(p,@RasConSiz,@lpcConnections);
for i:=0 to lpcConnections-1 do begin
somevalue:=PRASCONN(p).нужное поле;
inc(p);
end;