Qt/QML编程学习之心得:嵌入式系统调用(五)

Qt/QML编程学习之心得:嵌入式系统调用(五)_第1张图片

 Qt/QML是很适合开发有触摸屏等嵌入式环境下的GUI界面的,对于这种系统,显然光有华丽的界面还不行,必然会涉及调用底层系统及硬件BSP。对于VC来说,消息都是轮询的,就是有个while 处理消息的dispatch,而Qt/QML采用的是D-BUS的方式,不是强耦合强轮训的,而是总线式。那么底层系统功能调用如何实现呢?一般Qt/QML会在某些操作系统下实现,比如QNX、Linux、Android等,作为系统有一些shell脚本、底层硬件驱动、文件系统、多进程等支持Qt的界面实现。

popen

Popen命令会启动内核,调用内核shell命令。

Qt实现如下:
int executeShellCmd(const char* cmd)
{
    FILE *fp;
    char result[256]={0};
    if((fp = popen(cmd,"r"))== NULL)
    {
        printf("ShellCmd error\n");
        return -1;
    }
    while(fgets(result,sizeof(result),fp)!=NULL)
    {
        printf("result:%s\n",result);
    }
    pclose(fp);
 

你可能感兴趣的:(qt,开发语言,QML)