Russian Qt Forum

Qt => Работа с сетью => Тема начата: merke от Январь 25, 2011, 19:34



Название: Пинг сервера
Отправлено: merke от Январь 25, 2011, 19:34
Всем привет!

В общем стояла задача пропинговать сервер, накидал следующую функцию:

Код
C++ (Qt)
bool ping(int timeOut, QString ipAddress)
{
   QProcess pingProc;
   QString pingCmd;
   QByteArray contents;
   pingCmd = QString("ping -n 1 -w %1 %2").arg(timeOut * 1000).arg(ipAddress);
   pingProc.setProcessChannelMode(QProcess::MergedChannels);
 
   pingProc.start(pingCmd, QIODevice::ReadOnly);
   pingProc.waitForFinished(5000);
 
   if(pingProc.state() != QProcess::NotRunning)
   {
       pingProc.close();
   }
 
   contents = pingProc.readAll();
 
   if (contents.contains("TTL"))
   {
       return true;
   }
   else
       return false;
}

ОС Виндовс. Знатоки, как думаете правильно ли я реализовал или можно как то иначе?