До, Вы правы, русская версия винды. Но вот теперь возникает следующий вопрос - Вместо Lost=0 пишет потеряно = 0. Но русские символы в данную строчку кода не катят. Что-то я совсем невнимательный и не могу разобраться в чем делоЕсли у вас локаль не английская, то паттерн "Lost = 0" надо заменить на локализованный.
Про пинг теоритически понятно, а вот как это будет выглядеть на практике?
Я просто не представляю как это реализовать. запустить cmd команду на пинг из TC смогу, а вот как получить результат пинга и как его обработать?!
Хотя... вот красивый вариант по факу:function isConnectionUp(){ var shell = new ActiveXObject("WScript.Shell"); var WshShellObj = new ActiveXObject("WScript.Shell"); var WshShellExecObj = WshShellObj.Exec("cmd.exe"); readTillChar(WshShellExecObj, ">"); WshShellExecObj.StdIn.Write("ping ya.ru\n"); var out = readTillChar(WshShellExecObj, ">"); var lostPattern = /.*Lost = 0.*/; return lostPattern.test(out); } function readTillChar(WshShellExecObj, endChar){ var out = ""; var curChar; while (!WshShellExecObj.StdOut.AtEndOfStream) { curChar = WshShellExecObj.StdOut.Read(1); out += curChar; if (curChar == endChar) break; } return out; } function test(){ Log.Message(isConnectionUp()); }
Странно, просто скопировал данный пример и вставил в проект. запустил и всегда возвращает false
- Форум тестировщиков
- → Публикации dguminsk