#pragma comment (lib, "Iphlpapi.lib") #include "Windows.h" #include "stdio.h" #include "iphlpapi.h" int main ( ) { IP_ADAPTER_INFO * pAdapterInfo ; ULONG ulOutBufLen ; DWORD dwRetVal ; pAdapterInfo = ( IP_ADAPTER_INFO * ) malloc ( sizeof ( IP_ADAPTER_INFO ) ) ; ulOutBufLen = sizeof ( IP_ADAPTER_INFO ) ; if ( GetAdaptersInfo ( pAdapterInfo , & ulOutBufLen ) != ERROR_SUCCESS ) { free ( pAdapterInfo ) ; pAdapterInfo = ( IP_ADAPTER_INFO * ) malloc ( ulOutBufLen ) ; } if ( ( dwRetVal = GetAdaptersInfo ( pAdapterInfo , & ulOutBufLen ) ) != ERROR_SUCCESS ) { free ( pAdapterInfo ) ; } PIP_ADAPTER_INFO pAdapter = pAdapterInfo ; while ( pAdapter ) { printf ( "Adapter Name: %s %s\n" , pAdapter -> AdapterName , pAdapter -> Description ) ; printf ( "IP Address: %s\n" , pAdapter -> IpAddressList . IpAddress . String ) ; pAdapter = pAdapter -> Next ; } if ( pAdapterInfo ) free ( pAdapterInfo ) ; system ( "pause" ) ; return 0 ; }