x3fang_c 2022-12-01 15:07 采纳率: 8.7%
浏览 14

windows下Dev-C++如何获取本机mac地址?

windows下Dev-C++如何获取本机mac地址?
保存为string格式?

  • 写回答

1条回答 默认 最新

  • Minuw 2022-12-01 15:11
    关注
    
    typedef struct _ASTAT_
    {
        ADAPTER_STATUS adapt;
        NAME_BUFFER NameBuff [30];
    } ASTAT, *PASTAT;
     
    void getMac(char * mac)
    {
        ASTAT Adapter;
        NCB Ncb;
        UCHAR uRetCode;
        LANA_ENUM lenum;
        int i = 0;
     
        memset(&Ncb, 0, sizeof(Ncb));
        Ncb.ncb_command = NCBENUM;
        Ncb.ncb_buffer = (UCHAR *)&lenum;
        Ncb.ncb_length = sizeof(lenum);
     
        uRetCode = Netbios( &Ncb );
        printf( "The NCBENUM return adapter number is: %d \n ", lenum.length);
        for(i=0; i < lenum.length ; i++)
        {
            memset(&Ncb, 0, sizeof(Ncb));
            Ncb.ncb_command = NCBRESET;
            Ncb.ncb_lana_num = lenum.lana[i];
            uRetCode = Netbios( &Ncb );
     
            memset(&Ncb, 0, sizeof(Ncb));
            Ncb.ncb_command = NCBASTAT;
            Ncb.ncb_lana_num = lenum.lana[i];
            strcpy((char *)Ncb.ncb_callname, "* ");
            Ncb.ncb_buffer = (unsigned char *) &Adapter;
            Ncb.ncb_length = sizeof(Adapter);
            uRetCode = Netbios( &Ncb );
     
            if (uRetCode == 0)
            {
                //sprintf(mac, "%02x-%02x-%02x-%02x-%02x-%02x ",
                sprintf(mac, "%02X%02X%02X%02X%02X%02X ",
                    Adapter.adapt.adapter_address[0],
                    Adapter.adapt.adapter_address[1],
                    Adapter.adapt.adapter_address[2],
                    Adapter.adapt.adapter_address[3],
                    Adapter.adapt.adapter_address[4],
                    Adapter.adapt.adapter_address[5]
                );
                //printf( "The Ethernet Number on LANA %d is: %s\n ", lenum.lana[i], mac);
            }
        }
    }
     
    int main(int argc, char *argv[])
    {
        char *mac=new char[32];
        getMac(mac);
        printf( "%s\n ", mac);
        delete[]mac;
        system( "PAUSE> NUL ");
        return 0;
    }
    

    https://blog.csdn.net/dongdan_002/article/details/40890629?ops_request_misc=&request_id=&biz_id=102&utm_term=devc++%E8%8E%B7%E5%8F%96%E6%9C%AC%E6%9C%BAmac%E5%9C%B0%E5%9D%80&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-40890629.142^v67^control,201^v3^add_ask,213^v2^t3_esquery_v1&spm=1018.2226.3001.4187

    评论

报告相同问题?

问题事件

  • 创建了问题 12月1日

悬赏问题

  • ¥15 气象网格数据与卫星轨道数据如何匹配
  • ¥100 java ee ssm项目 悬赏,感兴趣直接联系我
  • ¥15 微软账户问题不小心注销了好像
  • ¥15 x264库中预测模式字IPM、运动向量差MVD、量化后的DCT系数的位置
  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥15 使用百度地图api 位置函数报错?
  • ¥15 metamask如何添加TRON自定义网络
  • ¥66 关于川崎机器人调速问题
  • ¥15 winFrom界面无法打开