新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 獲取網卡的相關信息的C++源碼

        獲取網卡的相關信息的C++源碼

        作者: 時間:2012-06-26 來源:網絡 收藏

         //////////////////////////////////////////////////////////////////

        本文引用地址:http://www.104case.com/article/148848.htm

          #include stdafx.h

          #include

          #include

          #include Iphlpapi.h

          using namespace std;

          PIP_ADAPTER_INFO pinfo=NULL;

          unsigned long len=0;

          CString macaddress;

          CString  description;

          CString  type;

          CString  subnet;

          CString  IpAddress;

          CString  gateway;

          CString  PrimaryWinsServer;

          CString  dhcp;

          void GetInfo();

          void ParseData();

          void OutPut(CString str);

          void main()

          {

          cout------------------------檢測---------------------n;

          GetInfo();

          }

          void GetInfo()

          {

          if (pinfo!=NULL)

          delete (pinfo);

          unsigned long nError;

          nError  =  GetAdaptersInfo(pinfo,len); //1??üoˉêy

          if (nError==0)

          {

          ParseData();

          }

          if (nError==ERROR_NO_DATA)

          {

          OutPut(沒有網絡設備);

          }

          if (nError==ERROR_NOT_SUPPORTED)

          {

          OutPut(GetAdaptersInfo不支持本系統);

          }

          if (nError==ERROR_BUFFER_OVERFLOW)

          {

          pinfo= (PIP_ADAPTER_INFO)malloc(len);

          nError  =  GetAdaptersInfo(pinfo,len);

          if (nError==0)

          {

          ParseData();

          }

          }

          return;

          }

          void ParseData()

          {

          if (pinfo!=NULL)

          {

          macaddress.Format(%02X:%02X:%02X:%02X:%02X:%02X,pinfo->Address[0],pinfo->Address[1],pinfo->Address[2],pinfo->Address[3],pinfo->Address[4],pinfo->Address[5]);

          description  =  pinfo->Description;

          type.Format(%d,pinfo->Type);

          PIP_ADDR_STRING pAddressList = (pinfo->IpAddressList);

          IpAddress  =;

          do

          {

          IpAddress  +=  pAddressList->IpAddress.String;

          pAddressList = pAddressList->Next;

          if (pAddressList != NULL)

          IpAddress  +=rn;

          } while (pAddressList != NULL);

          subnet.Format(%s,pinfo->IpAddressList.IpMask.String);

          gateway.Format(%s,pinfo->GatewayList.IpAddress.String);

          if (pinfo->HaveWins)

          PrimaryWinsServer.Format(%s,pinfo->PrimaryWinsServer.IpAddress.String );

          else

          PrimaryWinsServer.Format(%s,N/A );

          if (pinfo->DhcpEnabled )

          dhcp.Format(%s,pinfo->DhcpServer.IpAddress.String );

          else

          dhcp.Format(%s,N/A);

          pinfo = pinfo->Next;

          }

          OutPut(網絡設備為:t+description);

          OutPut(Mac地址為:t+macaddress);

          OutPut(類型:t+type);

          OutPut(IP地址:t+IpAddress);

          OutPut(子網掩碼:t+subnet);

          OutPut(網關:t+gateway);

          OutPut(主Wins服務器:t+PrimaryWinsServer);

          OutPut(dhcp服務器:t+dhcp);

          }

          void OutPut(CString str)

          {

          cout

          }

        c++相關文章:c++教程




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 余江县| 积石山| 扬中市| 孟村| 平远县| 九江县| 威信县| 阳信县| 宣威市| 军事| 广昌县| 布拖县| 桃园县| 定襄县| 满洲里市| 安溪县| 惠安县| 富顺县| 汝阳县| 南漳县| 泰顺县| 盐山县| 沙雅县| 嘉鱼县| 瑞昌市| 伊金霍洛旗| 那曲县| 惠州市| 内丘县| 泰安市| 古交市| 寻甸| 武汉市| 景泰县| 闽清县| 田林县| 宾川县| 时尚| 东城区| 方山县| 石家庄市|