Вход | Регистрация
 

Как средствами 1C проверить ping (Ping monitor)?

Как средствами 1C проверить ping (Ping monitor)?
Я
   savchenkodenis
 
02.10.09 - 14:27
Как средствами 1C проверить ping разных хостов
и выводить результат на форму.
 
 
   Господин ПЖ
 
1 - 02.10.09 - 14:28
ты не поверишь... ping и в 1С ping
   ДенисЧ
 
2 - 02.10.09 - 14:30
Команда ping прекрасно перенаправляется в файл. А дальше дело только по кнопкам стучать, даже думать не надо...
   Мутабор
 
3 - 02.10.09 - 14:33
У программы есть код возврата, параметрами можешь выставить сколько пингов слать
   savchenkodenis
 
4 - 02.10.09 - 14:35
вот пример нашел

Процедура Кнопка1Нажатие(Элемент)
перем ответ;
ответ =0;

ответ = ping("80.252.128.110");
Сообщить( ?(ответ >0 ,"Есть соединение","Нет соединения" ));
КонецПроцедуры

Function Ping(IPАдрес)
   objShell = Новый COMОбъект("WScript.Shell") ;
    objScriptExec = objShell.Exec("ping.exe -n 1 " + IPАдрес) ;
    strPingResults = НРег(objScriptExec.StdOut.ReadAll());
     Возврат   Найти(strPingResults, "ttl=");
EndFunction
   savchenkodenis
 
5 - 02.10.09 - 14:36
думаю как бы пинги на форму вывести...
   savchenkodenis
 
6 - 02.10.09 - 15:19
+
   hhhh
 
7 - 02.10.09 - 15:36
(6) тебе же сказали в (2)
   savchenkodenis
 
8 - 02.10.09 - 15:52
(7) если бы примерно показать...
   Fragster
 
9 - 02.10.09 - 15:54
(4) заюзай %errorlevel%
   kvk
 
10 - 02.10.09 - 17:15
(9)+
Перем wmi,wss;

Процедура КнопкаВыполнитьНажатие(Кнопка)
    Адр="80.252.128.110";
   // Вариант 1
 
   // msdn.microsoft.com/en-us/library/aa394595(VS.85).aspx
 
    Если wmi = Неопределено Тогда 
        wmi=ПолучитьCOMОбъект("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2");
    КонецЕсли;
    Успех=Ложь;
    oColPings=wmi.ExecQuery("Select StatusCode From Win32_PingStatus where Address = '"+Адр+"'");
    Для Каждого objStatus Из oColPings Цикл 
        Успех=Не objStatus.StatusCode;
    КонецЦикла;
    Сообщить(Успех);
   // Вариант 2
 
    Если wss = Неопределено Тогда 
        wss=Новый COMОбъект("WScript.Shell");
    КонецЕсли;
    Сообщить(Не wss.Run("ping -n 1 "+Адр,0,Истина));
КонецПроцедуры


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.