Mac OS 获取主板序列号

qq_36707167 2016-11-30 03:02:35
从网上我也找了一些代码,用C或C++获取主板序列号。如下:

pid_t pid;
int ret = 0;
int fd[2] = {0};

//创建管道
ret = pipe(fd);
if(ret == -1)
{
perror("pipe");
_exit(1);
}

//创建子进程,目的 1exec 2复制管道文件描述符
pid = vfork();
if(pid < 0)
{
perror("vfork");
}
else if(pid == 0)
{
dup2(fd[1], 1);//标准输出重定向到管道的写端

char str[50]="dmidecode -s system-serial-number";
execlp("/bin/sh","sh","-c",str,NULL);
}
else
{
char result[100] = "";
read(fd[0], result, sizeof(result));//从管道的读端读取数据

char msg[100] = "";
sprintf(msg, "%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c:%c%c",
result[7],result[8],result[10], result[11],result[13],result[14],result[16],result[17],
result[19],result[20],result[22],result[23],result[25],
result[26],result[28],result[29],result[31],result[32],
result[34],result[35],result[37],result[38],result[40],
result[41],result[43],result[44],result[46],result[47],
result[49],result[50],result[52],result[53]);
printf("---->%s/n",msg);
}

但是由于无法获取Mac权限,所以老是为空

谁有办法能获取Mac的root权限吗?或者有其他的办法获取Mac OS X的主板序列号吗?
...全文
1761 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_36707167 2016-12-01
  • 打赏
  • 举报
回复
yuelengdihai 你能代码获取root权限吗?
cocoabird 2016-11-30
  • 打赏
  • 举报
回复
1,添加root用户,用root用户登录 2,命令行sudo 3,system_profiler命令

1,025

社区成员

发帖
与我相关
我的任务
社区描述
Linux /Unix kernel支持不同的硬件体系,X86, ARM, MIPS, 等等
社区管理员
  • CPU和硬件区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧