我正在尝试使用SDelete安全清除目录。我知道这是从命令行使用的,但是我将如何自动从C++代码中清除目录,如果它具有内置的任何内置函数,也将使用Qt。我无法通过搜索找到任何东西,这是我第一次这样做。任何帮助将不胜感激,谢谢。

最佳答案

最好不要尝试重新创建SDelete的功能。像SDelete一样出色地完成工作将是很多工作。调用现有应用程序是一个明智的选择。

现在,您的问题...如果您想使用QT,那么您需要的是这样的东西:

QString path = QString("sdelete", QStringList() << "Bogus.txt");
QProcess sdelete;

sdelete.start( path );
sdelete.waitForFinished();

这将使用参数sdelete启动进程Bogus.txt,然后等待直到应用程序完成。

更多信息:https://doc.qt.io/archives/qt-4.8/qprocess.html#start

从OP编辑:我发现使用以下代码对我有用,并且传入的参数是QString。
QProcess::execute("sdelete -s path");

09-06 18:21