Здравствуйте adontz, Вы писали:
AF>>>Просто в компьютере может быть несколько сетевых интерфейсов, и каждый из них может иметь свой собственный IP. Например, если в компьютере есть сетевая карта и модем, то для сетевой карты может быть свой IP, а для модема — свой. Хотя gethostbyname и возвращает адреса для всех интерфейсов (hostent.h_addr_list), но узнать какой IP сооветствует какому интерфейсу с ее помощью нельзя.
G>>Кстати, мне однажды нужно было перечислить адреса (заполнить комбо, чтобы пользователь выбрал к какому биндиться) и тогда (как и сейчас) я не знал как убрать из этого списка интерфейсы с "модемным приводом" (а точнее все RAS-овские). Вы случайно не знаете как это сделать?
A>A>GetNumberOfInterfaces
A>GetIfEntry
A>typedef struct _MIB_IFROW {
A> WCHAR wszName[MAX_INTERFACE_NAME_LEN];
A> DWORD dwIndex; // index of the interface
A> DWORD dwType; // type of interface
A> DWORD dwMtu;
// max transmission unit
A>
DWORD dwSpeed; // speed of the interface
A> DWORD dwPhysAddrLen;
// length of physical address
A> BYTE bPhysAddr[MAXLEN_PHYSADDR];
// physical address of adapter
A> DWORD dwAdminStatus;
// administrative status
A> DWORD dwOperStatus;
// operational status
A> DWORD dwLastChange;
// last time operational status changed
A> DWORD dwInOctets;
// octets received
A> DWORD dwInUcastPkts;
// unicast packets received
A> DWORD dwInNUcastPkts;
// non-unicast packets received
A> DWORD dwInDiscards;
// received packets discarded
A> DWORD dwInErrors;
// erroneous packets received
A> DWORD dwInUnknownProtos;
// unknown protocol packets received
A> DWORD dwOutOctets;
// octets sent
A> DWORD dwOutUcastPkts;
// unicast packets sent
A> DWORD dwOutNUcastPkts;
// non-unicast packets sent
A> DWORD dwOutDiscards;
// outgoing packets discarded
A> DWORD dwOutErrors;
// erroneous packets sent
A> DWORD dwOutQLen;
// output queue length
A> DWORD dwDescrLen;
// length of bDescr member
A> BYTE bDescr[MAXLEN_IFDESCR];
// interface description
A>} MIB_IFROW,*PMIB_IFROW;
A>
A>Жалко под 95 не пашет
В МСДН ничего похожего не нашел
структуру нашел в Iprtrmib.h
Наверное это опять WIN2000 only?