Qt4:外部コマンドを使う


Qt4:百の定石


  • QPorcessの start() に外部コマンド名(QString)と引数(QStringList?)を渡す。
  • 実行時間の制限をつける。
  • コマンドが吐き出すログは readAll() で読むことができる。

  • ex. ps2pdf graf.ps graf.pdf を実行する
    QProcess proc ;
    proc.start(QString("ps2pdf" ), QStringList() << "graf.ps" << "graf.pdf" ) ;
    if (!proc.waitForFinished(5000)) return ; //msec
    qDebug() << proc.readAll() ;
  • アプリ(ここではPreview)を立ち上げる。立ち上げたらもう関係ない。
    QString str = "open /Applications/Preview.app " + "xxxx.pdf" ;
    QProcess proc ;
    proc.startDetached(str) ;