• 6595阅读
  • 5回复

QT调用shell脚本 [复制链接]

上一主题 下一主题
离线laiobot
 
只看楼主 倒序阅读 楼主  发表于: 2010-01-07
我在main.cpp里面怎样写的
#include <QProcess>
int main()
{    
        QProcess::execute("e.sh");
      
}
    
是不是这样就完了
脚本名就是e.sh
离线laiobot
只看该作者 1楼 发表于: 2010-01-07
我换了种写法,定义了个signal 为poc()
connect用okbutton指向它

poc()
{
      QProcess *poc = new QProcess;
   poc->("e.sh");
}
这样写也没有条用成功,请问应该怎么写?
离线XChinux

只看该作者 2楼 发表于: 2010-01-07
e.sh是由系统的某个shell来调用的吧?比如bash, tsh, csh
所以你应该这样调用
QProcess::execute("bash e.sh")
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线laiobot
只看该作者 3楼 发表于: 2010-01-07
引用第2楼XChinux于2010-01-07 16:26发表的  :
e.sh是由系统的某个shell来调用的吧?比如bash, tsh, csh
所以你应该这样调用
QProcess::execute("bash e.sh")




那我后来那种写法可以吗?
因为脚本必须在QT界面操作完成才能执行
connect(okbutton,SIGNAL(clicked()),this,SLOT(poc()))

poc()是定义的一个private slot
离线laiobot
只看该作者 4楼 发表于: 2010-01-07
高人给个调用shell可行的模板
离线laiobot
只看该作者 5楼 发表于: 2010-01-07
我已经找到解决方法了
system
快速回复
限100 字节
 
上一个 下一个