linux qt process 和system 的用法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux qt process 和system 的用法相关的知识,希望对你有一定的参考价值。
在qt里面使用system("mplayer -o wav:- ../shanghaitan.mp3 | aplay")能够正常播放mp3,但是这样的调用是阻塞调用,而我不想有阻塞调用,于是采用QProcess *pro = new QProcess; pro->start("madplayer -o wav:- ../shanghaitan.mp3 | aplay");这样的话就不能使用,请教,这个QProcess在qt里面应该怎样使用啊,谢谢帮忙了。
参考技术A QStringList args;args << "-o wav:";//将你后面的那些参数填充。。可能 是 | aplay这里有问题,你把这个去掉看行不行。
start("mplayer", args);追问
还是不可以, 如果不要| aplay不能用我是想在x86上使用madplay
本回答被提问者和网友采纳 参考技术B 命令行里增加后台运行符号。用system("command")的时候,改成system("command&")就可以背景运行了。
QT在linux环境下读取和设置系统时间(通过system来直接调用Linux命令,注意权限问题)
QT在Linux环境下读取和设置系统时间
本文博客链接:http://blog.csdn.NET/jdh99,作者:jdh,转载请注明.
环境:
主机:Fedora12
开发软件:QT
读取系统时间
- void moreidDialog::refresh_time()
- {
- QDateTime time;
- txt_time->setText(time.currentDateTime().toString("yyyy") + "." + \
- time.currentDateTime().toString("M") + "." + \
- time.currentDateTime().toString("d") + "." + \
- time.currentDateTime().toString("h") + "." + \
- time.currentDateTime().toString("m"));
- }
- //保存时间键
- void moreidDialog::slot_save_time_key()
- {
- QDateTime time;
- QString str = txt_time->text();
- //判断格式是否正确
- if (str.count(".") != 4)
- {
- txt_time->setText(tr("ge shi cuo wu"));
- return;
- }
- int i = 0,j = 0;
- i = str.indexOf(".");
- QString year = str.mid(0,i);
- j = str.indexOf(".",i + 1);
- QString month = str.mid(i + 1,j - i - 1);
- i = j;
- j = str.indexOf(".",i + 1);
- QString day = str.mid(i + 1,j - i - 1);
- i = j;
- j = str.indexOf(".",i + 1);
- QString hour = str.mid(i + 1,j - i - 1);
- i = j;
- j = str.indexOf(".",i + 1);
- QString min = str.mid(i + 1,j - i - 1);
- bool ok = false;
- year.toInt(&ok);
- if (ok == false)
- {
- txt_time->setText(tr("ge shi cuo wu"));
- return;
- }
- month.toInt(&ok);
- if (ok == false)
- {
- txt_time->setText(tr("ge shi cuo wu"));
- return;
- }
- day.toInt(&ok);
- if (ok == false)
- {
- txt_time->setText(tr("ge shi cuo wu"));
- return;
- }
- hour.toInt(&ok);
- if (ok == false)
- {
- txt_time->setText(tr("ge shi cuo wu"));
- return;
- }
- min.toInt(&ok);
- if (ok == false)
- {
- txt_time->setText(tr("ge shi cuo wu"));
- return;
- }
- str = "date -s " + month + "/" + day + "/" + year;
- system(str.toLatin1().data());
- str = "date -s " + hour + ":" + min + ":" + "00";
- system(str.toLatin1().data());
- //强制写入到CMOS
- system("clock -w");
- }
http://blog.csdn.net/jdh99/article/details/7102196
以上是关于linux qt process 和system 的用法的主要内容,如果未能解决你的问题,请参考以下文章
Linux 下安装QT出现The specified system/compiler is not supported错误
C/C++ - 运行 system("process &") 然后写入它的标准输入
在Ubuntu上运行PPOCRLabel启动错误:FatalError: `Process abort signal` is detected by the operating system.
在Ubuntu上运行PPOCRLabel启动错误:FatalError: `Process abort signal` is detected by the operating system.
linux下oracle数据库由于参数文件丢失导致的数据库服务启动失败,报“failure in processing system parameters“错误问题解决