1、出现这个问题,很明显是是内存分配有问题。
2、和 正确的代码 一对比,才发现是 以下这部分代码 出问题了
ULONG ulOutLen ;
IP_ADAPTER_INFO *pIpAdapterInfo = ( IP_ADAPTER_INFO * )malloc( sizeof(IP_ADAPTER_INFO) );
if ( pIpAdapterInfo == NULL )
{
printf("GetMac.cpp main IP_ADAPTER_INFO first malloc failed!");
dwReturn = 1;
goto exit;
}
dwResult = GetAdaptersInfo( pIpAdapterInfo, &ulOutLen );
3、问题主要是由于我 没有仔细看 msdn开发文档引起的。文档上说“
specifies the size of the buffer