首页
社区
课程
招聘
[分享]机器码获取支持win10最新
发表于: 2020-3-4 17:36 8821

[分享]机器码获取支持win10最新

2020-3-4 17:36
8821

bool getDevcieInfo(char* cmd, list<string> &resultList) {
    char buffer[BUFFER_SIZE];
    bool ret = false;
    FILE* pipe = _popen(cmd, "r"); //打开管道,并执行命令 
    if (!pipe)
        return ret;

    char *name[20] = { "UUID", "ProcessorId", "SerialNumber" };
    int len0 = strlen(name[0]), len1 = strlen(name[1]), len2 = strlen(name[2]);
    bool isOk = false;
    while (!feof(pipe)) {
        if (fgets(buffer, BUFFER_SIZE, pipe)) {
            if (strncmp(name[0], buffer, len0) == 0
                || strncmp(name[1], buffer, len1) == 0
                || strncmp(name[2], buffer, len2) == 0) // 能够正确获取信息
            {
                isOk = true;
                continue;
            }
            if (isOk == false
                || strcmp("\r\n", buffer) == 0) //去掉windows无用的空行
            {
                continue;
            }
            ret = true;
            resultList.push_back(string(buffer));
        }
    }
    _pclose(pipe); // 关闭管道 
    return ret;
}



[注意]APP应用上架合规检测服务,协助应用顺利上架!

收藏
免费 1
支持
分享
最新回复 (6)
雪    币: 83
活跃值: (1092)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
2
感谢分享
2020-3-5 00:41
0
雪    币: 1027
活跃值: (261)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
3
cpu、bios和硬盘都有,谢谢。
2020-3-6 23:47
0
雪    币: 7723
活跃值: (3781)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
哦,wmic实现
2020-3-10 18:15
0
雪    币: 2510
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
5
感谢分享
2020-3-11 12:45
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
6
能修改吗...
2020-4-4 20:18
0
雪    币: 27
活跃值: (127)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
这些用从 SMBIOS 中也能读取到。如果一定要用 wmic,用 COM 接口就行了,读取 cmd 的方法有些低级。
2020-4-15 17:33
0
游客
登录 | 注册 方可回帖
返回
//