Qt QProcess实现CMD功能
简单封装
/*
Copyright: YiChen
Contact email: 317090996@qq.com
*/
#ifndef YCREMOTECONTROL_H
#define YCREMOTECONTROL_H
#include <QObject>
#include <QProcess>
class YCRemoteControl : public QObject
{
Q_OBJECT
public:
explicit YCRemoteControl(QObject *parent = nullptr);
~YCRemoteControl();
bool openSoft(const QString &app, const QStringList &args);
void closeSoft();
bool sendCommand(const QByteArray &cmd);
bool sendCommandGetReturn(const QByteArray &cmd, QByteArray &returnValue);
QByteArray getReturn();
signals:
void finished(int,QProcess::ExitStatus);
void readyReadStandardOutput();
private:
QProcess *m_process;
public slots:
};
#endif // YCREMOTECONTROL_H
打开CMD程序
QString soft = ui->editPath->text();
m_remoteControl->openSoft(soft,{});
输入执行命令
QString command = ui->editCommand->text();
QByteArray byteArray;
m_remoteControl->sendCommand(command.toLocal8Bit());