首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >QT C++上的C++备份数据库

QT C++上的C++备份数据库
EN

Stack Overflow用户
提问于 2022-03-16 06:53:33
回答 1查看 125关注 0票数 0

我想用QT程序中的qprocess备份我的数据库,代码如下所示,但是在备份和查看错误Qprocess时,0kb会发生:销毁的进程(“mysqldump.exe”)仍然在运行。

代码语言:javascript
代码运行次数:0
运行
复制
QProcess dump(this);
QStringlist args;
QString path="C:/Users/mahmut/Desktop/dbbackupfile/deneme.sql";
args<<"-uroot"<<"-proot"<<"kopuz"<<">";
dump.setStandardOutputFile(path);
dump.start("mysqldump.exe",args);

if(!dump.waitForStarted(1000))
{
qDebug()<<dump.errorString();
}

你能帮我吗?ı不明白这个错误和okb备份文件。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-16 09:52:39

您的程序在进程完成之前终止,您需要使用static bool QProcess::startDetached(program, arguments, workingDirectory)或将dump.waitForFinished();添加到末尾。

此外,您也不需要在参数中添加">“。您已经用dump.setStandardOutputFile(path)重定向了输出,">“不适用于进程,因为它需要shell来执行命令,QProcess不使用shell --它只是运行一个进程而不是shell表达式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71492830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档