QProcess(净使用)不起作用

时间:2013-01-15 19:59:57

标签: c++ qt qprocess

我尝试运行“net use \ server_ip”并解析结果。平台 - Windows

我有以下代码:

QProcess *prc = new QProcess(0);
QString exec="net use";
QStringList params;
params << "\\\\" + getServerIP();
prc->start(exec,params);
qDebug() << "exec process";
prc->waitForFinished();
qDebug() << prc->readAll() << prc->exitStatus();;
delete connected;

但是readAll()重新运行“”并且exitStatus()返回0。

你们有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我的建议是删除以上所有内容,然后调用WNetAddConnection 1

至少如果我正确地解释你上面的内容,它似乎是一个非常迂回的版本:

WNetAddConnection(getServerIP(), NULL, NULL);

如果GetServerIP返回一个QString,你可能需要添加一个对toAscii(或toLatin1,toLocal8Bit等)的调用来转换它以获得`WNetAddConnection知道如何处理的东西。


  1. WNetAddConnection2WNetAddConnection3。 Microsoft正式推荐后者,但您似乎不需要他们提供的任何额外功能。