GetAdaptersAddresses没法获取网关信息
GetAdaptersAddresses无法获取网关信息?
调用GetAdaptersAddresses后的ip mac dns这些都能正常获取,但是
PIP_ADAPTER_ADDRESSES m_pCurrAddresses->FirstUnicastAddress->Address.lpSockaddr
里面是空的。
顺便问下,PIP_ADAPTER_ADDRESSES里包含子网掩码信息吗,找了半天都找不到
------解决方案--------------------
看一下第二个参数Flags的说明
Flags
The type of addresses to retrieve. The possible values are defined in the Iptypes.h header file. Note that the Iptypes.h header file is automatically included in Iphlpapi.h, and should never be used directly.
This parameter is a combination of the following values. If this parameter is zero, then unicast, anycast, and multicast IP addresses will be returned.
Value Meaning
GAA_FLAG_INCLUDE_ALL_COMPARTMENTS
Return addresses in all routing compartments. This flag is not currently supported and reserved for future use.
GAA_FLAG_INCLUDE_ALL_INTERFACES
Return addresses for all NDIS interfaces. This flag is supported on Windows Vista and later.
//这里
GAA_FLAG_INCLUDE_GATEWAYS
Return the addresses of default gateways. This flag is supported on Windows Vista and later.
GAA_FLAG_INCLUDE_PREFIX
Return a list of IP address prefixes on this adapter. This flag is supported on Windows XP SP1 and later.
GAA_FLAG_INCLUDE_TUNNEL_BINDINGORDER
Return the adapter addresses sorted in tunnel binding order. This flag is supported on Windows Vista and later.
GAA_FLAG_INCLUDE_WINS_INFO
Return addresses of WINS servers. This flag is supported on Windows Vista and later.
GAA_FLAG_SKIP_ANYCAST
Do not return IPv6 anycast addresses.
GAA_FLAG_SKIP_DNS_SERVER
Do not return addresses of DNS servers.
GAA_FLAG_SKIP_FRIENDLY_NAME
Do not return the adapter friendly name.
GAA_FLAG_SKIP_MULTICAST
Do not return multicast addresses.
GAA_FLAG_SKIP_UNICAST
Do not return unicast addresses.
调用GetAdaptersAddresses后的ip mac dns这些都能正常获取,但是
PIP_ADAPTER_ADDRESSES m_pCurrAddresses->FirstUnicastAddress->Address.lpSockaddr
里面是空的。
顺便问下,PIP_ADAPTER_ADDRESSES里包含子网掩码信息吗,找了半天都找不到
------解决方案--------------------
看一下第二个参数Flags的说明
Flags
The type of addresses to retrieve. The possible values are defined in the Iptypes.h header file. Note that the Iptypes.h header file is automatically included in Iphlpapi.h, and should never be used directly.
This parameter is a combination of the following values. If this parameter is zero, then unicast, anycast, and multicast IP addresses will be returned.
Value Meaning
GAA_FLAG_INCLUDE_ALL_COMPARTMENTS
Return addresses in all routing compartments. This flag is not currently supported and reserved for future use.
GAA_FLAG_INCLUDE_ALL_INTERFACES
Return addresses for all NDIS interfaces. This flag is supported on Windows Vista and later.
//这里
GAA_FLAG_INCLUDE_GATEWAYS
Return the addresses of default gateways. This flag is supported on Windows Vista and later.
GAA_FLAG_INCLUDE_PREFIX
Return a list of IP address prefixes on this adapter. This flag is supported on Windows XP SP1 and later.
GAA_FLAG_INCLUDE_TUNNEL_BINDINGORDER
Return the adapter addresses sorted in tunnel binding order. This flag is supported on Windows Vista and later.
GAA_FLAG_INCLUDE_WINS_INFO
Return addresses of WINS servers. This flag is supported on Windows Vista and later.
GAA_FLAG_SKIP_ANYCAST
Do not return IPv6 anycast addresses.
GAA_FLAG_SKIP_DNS_SERVER
Do not return addresses of DNS servers.
GAA_FLAG_SKIP_FRIENDLY_NAME
Do not return the adapter friendly name.
GAA_FLAG_SKIP_MULTICAST
Do not return multicast addresses.
GAA_FLAG_SKIP_UNICAST
Do not return unicast addresses.