![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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