Function SendARP(ipaddr:ulong;temp:dword;ulmacaddr:pointer;
ulmacaddrleng:pointer) : DWord;stdcall; far external 'Iphlpapi.dll' ;//获取MAC 函数
在from 窗体上引用 use unit2,WinSock;
Function GetMac(IPADD:string):string;//根据IP地址 获取MAC地址(不要告诉我连网卡地址都不懂)
var
Curip:ulong;
CurMac:array[0..5] of byte;
CurMaclength:ulong;
ErrNo:integer;
begin
Curip := inet_addr(PChar(IPADD));
CurMaclength := length(CurMac);
ErrNo := sendarp(Curip,0,@CurMac,@CurMaclength);//获取的主机MAC函数 在动态连接库上的方法
if ErrNo = 0 then
result := format('%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x',[CurMac[0],CurMac[1],
CurMac[2],CurMac[3],CurMac[4],CurMac[5]])//格式话 主机的MAC地址
else result := '我日主机没开机或者网络不通';
end;