我试图运行“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。
你们有什么建议吗?
最佳答案
我的建议是删除所有上述内容,然后改为WNetAddConnection 1。
至少如果我正确地解释了上面的内容,它似乎是这样的东西的一个真正的round回版本:
WNetAddConnection(getServerIP(), NULL, NULL);
如果GetServerIP返回一个QString,则可能需要添加一个对
toAscii
(或toLatin1,toLocal8Bit等)的调用,以将其转换为某种东西,WNetAddConnection知道如何处理。WNetAddConnection2
或WNetAddConnection3
。 Microsoft正式推荐后者,但是您似乎不需要它们提供的任何其他功能。