Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

GetAdaptersInfo-Грабли [D7, WinXP]


ser_sumy ©   (2004-02-16 13:25:00) 

type
PIP_ADAPTER_INFO = ^IP_ADAPTER_INFO;
IP_ADAPTER_INFO = record
  Next: PIP_ADAPTER_INFO;
  ComboIndex: DWORD;
  AdapterName: array[1..MAX_ADAPTER_NAME_LENGTH + 4] of  char;
  Description: array[1..MAX_ADAPTER_DESCRIPTION_LENGTH + 4] of char;
  AddressLength: UINT;
  Address: array[1..MAX_ADAPTER_ADDRESS_LENGTH] of byte;
  Index: DWORD;
  aType: UINT;
  DHCPEnabled: UINT;
  CurrentIPAddress: PIP_ADDR_STRING;
  IPAddressList: IP_ADDR_STRING;
  GatewayList: IP_ADDR_STRING;
  DHCPServer: IP_ADDR_STRING;
  HaveWINS: BOOL;
  PrimaryWINSServer: IP_ADDR_STRING;
  SecondaryWINSServer: IP_ADDR_STRING;
  LeaseObtained: LongInt;
  LeaseExpires: LongInt;
  SpareStuff: array [1..200] of char;
end;

procedure My_Gateway;
Var
AdapterInfo: IP_ADAPTER_INFO;
Result: Dword;
Next1: ^IP_ADAPTER_INFO;
begin

  Result:= (GetAdaptersInfo(@AdapterInfo, @OutBufLen));
if (Result) = 0 then
begin
  Next1:= @AdapterInfo;
  Gateway:=(Next1^.GatewayList.IpAddress);
 end  ;
end;
п
ри выходе из процедуры ошибка: 'access violation at 0x00000000: read of address 0x00000000 '
вчем проблема?


Radionov Alexey   (2004-02-16 15:07:00) [1]

Сорри, я наврал про то, кто куда пишет :)


Radionov Alexey   (2004-02-16 15:03:00) [2]

ИМХО память не выделяешь под Next1 и GetAdaptersInfo пишет по адресу адреса на структуру IP_ADAPTER_INFO


Наверх

Титульная страница Поиск, карта сайта Написать письмо