根据IP地址获取MAC地址

来源:互联网 发布:windows安装器装win10 编辑:程序博客网 时间:2024/06/04 18:35

std::string GetMacByIp(LPCSTR lpIp)
{
    IPAddr saddr;
    memset(&saddr,0,sizeof(saddr));
    ULONG ulMac[2];
    ULONG ulLen = sizeof(ulMac);
    saddr = inet_addr(lpIp);
    char szMac[20] = "";
    HRESULT hr = SendARP(saddr,0,ulMac,&ulLen);
    if (hr == NO_ERROR)
    {
        PBYTE pbHexMac = (PBYTE)ulMac;
        _snprintf(szMac,ulLen*3+1,"%02x-%02x-%02x-%02x-%02x-%02x",pbHexMac[0],pbHexMac[1],pbHexMac[2],pbHexMac[3],pbHexMac[4],pbHexMac[5]);
        return szMac;
    }

    return "";
}

原创粉丝点击