Hilfe bei ner Fehlermeldung



  • Hi,

    ich versuche gerade meine MAC-Adresse auszulesen.

    Mit folgender Funktion:

    CString CMAGDlg::GetMACAddress(int adapternumber)
    {
    	int nAdapterCount = 0; 
    	 ULONG ip; 
    	 ULONG buflen; 
    	 PIP_ADAPTER_INFO pAdInfo = NULL; 
    	 PIP_ADAPTER_INFO pAdInfo_c = NULL; 
    
    	 buflen = 0; 
    	 GetAdaptersInfo(pAdInfo, &buflen); //since buflen=0, buffer is 
    		// too small. function returns required buffersize in buflen. 
    	 pAdInfo = (struct _IP_ADAPTER_INFO *)new UCHAR[buflen+1]; 
    	 pAdInfo_c = pAdInfo; 
    	 if (GetAdaptersInfo(pAdInfo, &buflen) == ERROR_SUCCESS) 
    	 { 
    	  do 
    	  { 
    	   ip = inet_addr(pAdInfo->IpAddressList.IpAddress.String); 
    	   if ((ip != 0)&&(ip != 0x7f000001)) 
    	   { 
    		nAdapterCount++; 
    		if ((nAdapterCount == adapternumber)||(adapternumber == 0)) 
    		{ 
    		 if (pAdInfo->AddressLength != 0) 
    		 { 
    		  CString macstr; 
    		  for (int i = 0; i < (int)pAdInfo->AddressLength; i++) 
    		  { 
    		   CString temp; 
    		   temp.Format(_T(" %02X"), pAdInfo->Address[i]); 
    		   macstr += temp; 
    		  } 
    		  delete pAdInfo; 
    		  return macstr; 
    		 } 
    		} 
    	   } 
    	  } while ((pAdInfo->Next != NULL)&&((pAdInfo = pAdInfo->Next) != 
    	pAdInfo)); 
    	 } 
    	 delete pAdInfo_c; 
    	 return _T("");
    }
    

    Habe folgende Headerdateien includiert:
    #include "Winsock2.h"
    #include "Iptypes.h"
    #include "Iphlpapi.h"

    Und die IPHlpApi.Lib meinem Projekt hinzugefügt.

    Beim compelieren bekomme ich folgende Fehlermeldung:

    iphlpapi.h(183) : error C2065: 'PMIB_ICMP_EX' : nichtdeklarierter Bezeichner
    iphlpapi.h(183) : error C2146: Syntaxfehler : Fehlendes ')' vor Bezeichner 'pStats'
    iphlpapi.h(183) : warning C4229: Anachronismus verwendet : Modifizierer der Daten werden ignoriert
    iphlpapi.h(185) : error C2059: Syntaxfehler : ')'

    Könnte mir da vielleicht einer Weiterhelfen.

    Danke im Voraus.

    Gruß Sven


Anmelden zum Antworten