我自己用找很久的範例,改成dev-c++的library

arp.h

#ifndef ArpHPP
#define ArpHPP
/*************************************************
	project must include
		"http://www.cnblogs.com/../Dev-Cpp/lib/libiphlpapi.a"
		"http://www.cnblogs.com/../Dev-Cpp/lib/libwsock32.a"
*************************************************/
#include <windows.h>
#include <iphlpapi.h>

///	Syntax
///		bool MacFromIP(
///			_out	char* 	MacAddress
///			_in		char* 	IpAddress
///		);
///	Return Value
///		true - succeed
///		false - fail
bool MacFromIP(char*, char*);

#endif


arp.cpp

#include "arp.h"

bool MacFromIP(char* lpMAC, char* lpIP)
{ 
	IPAddr			ipAddr;
	ULONG			pulMac[2]; 
	PBYTE			pbHexMac = (PBYTE)pulMac; 
	ULONG			ulLen = 6; 

	ipAddr = inet_addr(lpIP);
	
	memset( pulMac, 0xff, sizeof(pulMac) ); 
	
	if( SendARP(ipAddr, 0, pulMac, &ulLen) == NO_ERROR )
	{
		wsprintf(lpMAC, "%02X-%02X-%02X-%02X-%02X-%02X", pbHexMac[0], pbHexMac[1], pbHexMac[2], pbHexMac[3], pbHexMac[4], pbHexMac[5]);
		return true;
	}
	else
		return false;
}