Форум программистов, компьютерный форум, киберфорум
VBScript/JScript/WSH/WMI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 13.03.2014
Сообщений: 8

Информация о доступности серверов (пинг)

13.03.2014, 11:04. Показов 3808. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.

Есть скрипт который выводит на html странице информацию о доступности серверов (пинг).


Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<%@ language="VBScript" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Ping</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<meta http-equiv="Refresh" content="180">
</head>
<body link="yellow" alink="yellow" vlink="yellow" background="backgr.jpg" text="yellow">
<p align="center"><strong><FONT size="6">Проверка доступности серверов</FONT></strong></p>
<p align=center><FONT color="#ffffff">Страница обновляется автоматически один раз в 3 минуты.</FONT></p>
<center>
<table border=1 width="43%" cellpadding=5 cellspacing=0>
     <tr align=left>
        <td><%pingserverwin("192.168.1.1")%>Server1</td>
        <td><%pingserverwin("192.168.1.2")%>Server2</td>
    </tr>
    </table>
</center>
</body>
</html>
<% Sub pingserverwin(strHost)
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colPings = objWMIService.ExecQuery ("Select * From Win32_PingStatus where Address = '" & strHost & "'")
response.write "<img src='"
For Each objStatus in colPings
  If IsNull(objStatus.StatusCode) or objStatus.StatusCode<>0 Then
    response.write "serverwinoff.gif' alt='Сервер " & strHost & " сейчас недоступен'>" & " - " & strHost
  Else
    response.write "serverwin.gif' alt='Сервер " & strHost & " сейчас включен'>" & " - " & strHost
  End If
Next
End Sub
%>

Необходимо, чтобы параллельно данные по каждому серверу сохранялись в txt. (Хост Дата/Время Статус)
Пример файла для Server1

Хост Время Статус
192.168.1.1 12.00 Доступен
192.168.1.1 12.03 Недоступен
..........



С VBS не знаком совсем.
Буду очень признателен за оказанную помощь.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.03.2014, 11:04
Ответы с готовыми решениями:

Проверка доступности серверов, анализ свободного места на дисках
Всем привет. Есть задача - 14 серваков по федеральной компании. Необходимо регулярно подключаться, проверять доступность, анализировать...

Пинг нескольких серверов
Для пинга я использую следующее procedure ping(server,name:string;lab:TLabel;gaug:TGauge;icmp:TIdicmpclient); var p,p1:integer; ...

Несовместимость по доступности: доступность типа параметра ниже доступности метода
Всем привет! Делаю задание на тему наследия классов. Есть класс «Поликлиника». Туда нужно загрузить информацию при помощи List&lt;&gt; из...

9
2619 / 549 / 109
Регистрация: 21.03.2012
Сообщений: 1,051
13.03.2014, 19:19
Лучший ответ Сообщение было отмечено Dragokas как решение

Решение

Как-то так:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<% Sub pingserverwin(strHost)
strPath = "C:\Temp\Ping_Status.txt"
Set objFS = CreateObject("Scripting.FileSystemObject")
If objFS.FileExists(strPath) Then
    Set objFile = objFS.OpenTextFile(strPath, 8)
Else
    Set objFile = objFS.CreateTextFile(strPath)
    objFile.WriteLine "Хост Время Статус"
End If
For Each objStatus in colPings
    If IsNull(objStatus.StatusCode) or objStatus.StatusCode<>0 Then
        objFile.WriteLine strHost & " " & FormatDateTime(Time, 4) & " Недоступен"
        blnPing = False
    Else
        objFile.WriteLine strHost & " " & FormatDateTime(Time, 4) & " Доступен"
        blnPing = True
    End If
Next
objFile.Close
Set objFile = Nothing: Set objFS = Nothing
If blnPing Then
    response.write "<img src='serverwin.gif' alt='Сервер " & strHost & " сейчас включен'>" & " - " & strHost
Else
    response.write "<img src='serverwinoff.gif' alt='Сервер " & strHost & " сейчас недоступен'>" & " - " & strHost
End If
End Sub
%>
1
0 / 0 / 0
Регистрация: 13.03.2014
Сообщений: 8
14.03.2014, 14:50  [ТС]
Спасибо большое за помощь!
0
-3 / 3 / 0
Регистрация: 17.03.2015
Сообщений: 86
24.04.2015, 14:18
Для себя ковыряю данный материал.
Как оно реализуется?
Кусок VBS скрипта вставляю в код HTML и ничего не происходит...я в этом деле новичок подскажите как правильнее работает?
0
Модератор
Эксперт JS
 Аватар для Eva Rosalene
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
27.04.2015, 17:06
sergun87, это серверная вставка для ASP
0
2619 / 549 / 109
Регистрация: 21.03.2012
Сообщений: 1,051
28.04.2015, 21:00
Цитата Сообщение от sergun87 Посмотреть сообщение
Как оно реализуется?..
Что конкретно интересует?
Цитата Сообщение от sergun87 Посмотреть сообщение
... Кусок VBS скрипта вставляю в код HTML и ничего не происходит...
Чтобы было о чём говорить, надо видеть Ваш код (HTML + VBS).
0
-3 / 3 / 0
Регистрация: 17.03.2015
Сообщений: 86
29.04.2015, 10:53
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<%@ language="VBScript" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Ping</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<meta http-equiv="Refresh" content="5">
</head>
<body link="blue" alink="blue" vlink="blue" background="Grey" text="blue">
<p align="center"><strong><FONT size="6">Проверка доступности серверов</FONT></strong></p>
<p align=center><FONT color="#fftttr">Страница обновляется автоматически один раз в 3 минуты.</FONT></p>
<center>
<table border=1 width="43%" cellpadding=5 cellspacing=0>
     <tr align=left>
        <td><%pingserverwin("192.168.221.254")%>Server1</td>
        <td><%pingserverwin("192.168.221.100")%>Server2</td>
    </tr>
    </table>
</center>
</body>
</html>
<% Sub pingserverwin(strHost)
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colPings = objWMIService.ExecQuery ("Select * From Win32_PingStatus where Address = '" & strHost & "'")
response.write "<img src='"
For Each objStatus in colPings
  If IsNull(objStatus.StatusCode) or objStatus.StatusCode<>0 Then
    response.write "FAILED.jpeg' alt='Сервер " & strHost & " сейчас недоступен'>" & " - " & strHost
  Else
    response.write "web-hosting-melbourne1.jpeg' alt='Сервер " & strHost & " сейчас включен'>" & " - " & strHost
  End If
Next
End Sub
%>
Добавлено через 41 секунду
Интересует отображение пингов на Web страничке.
0
251 / 239 / 16
Регистрация: 31.12.2009
Сообщений: 324
29.04.2015, 13:18
Цитата Сообщение от sergun87 Посмотреть сообщение
... подскажите как правильнее работает?
Цитата Сообщение от FraidZZ Посмотреть сообщение
... это серверная вставка для ASP
стало быть одного браузера для исполнения этого скрипта недостаточно, нужен ещё интерпретатор ASP - в данном случае IIS (Internet Information Server): серверу "скармливаете" вашу html-странчку он её обрабатывает (выполняет vbs код) а результаты выполнения статикой выдает клиентской программе (вашему браузеру)
1
2619 / 549 / 109
Регистрация: 21.03.2012
Сообщений: 1,051
03.05.2015, 16:57
Цитата Сообщение от sergun87 Посмотреть сообщение
Интересует отображение пингов на Web страничке
Попробуйте так (работать будет только в Internet Explorer):
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<html><head><title>Ping</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
</head>
<body link="blue" alink="blue" vlink="blue" background="Grey" text="blue">
<p align="center"><strong><FONT size="6">Проверка доступности серверов</FONT></strong></p>
<p align=center><FONT color="#fftttr">Для проверки укажите на имя сервера и щёлкните кнопкой мыши.</FONT></p>
<center><table border=1 width="43%" cellpadding=5 cellspacing=0>
<tr align=left>
<td id="srv1" onClick="pingserverwin('192.168.221.254',this)">Server1</td>
<td id="srv2" onClick="pingserverwin('192.168.221.100',this)">Server2</td>
</tr>
</table></center>
<script language="VBScript">
<!--
Sub pingserverwin(strHost,objClicked)
Dim objService, objCollection, objItem
Set objService = CreateObject("WbemScripting.SWbemLocator").ConnectServer(".", "root\cimv2")
Set objCollection = objService.InstancesOf("Win32_PingStatus WHERE Address='" & strHost & "'")
For Each objItem In objCollection
    If IsNull(objItem.StatusCode) Or objItem.StatusCode <> 0 Then
        objClicked.style.background = "#FFA0C5"
    Else
        objClicked.style.background = "#90EE90"
    End If
Next
Set objItem = Nothing: Set objCollection = Nothing: Set objService = Nothing
End Sub
-->
</script>
</body></html>
2
-3 / 3 / 0
Регистрация: 17.03.2015
Сообщений: 86
05.05.2015, 14:38
спасибо Добрый человек!
Сохранил в hta формате -работает !
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.05.2015, 14:38
Помогаю со студенческими работами здесь

Несовместимость по доступности: доступность типа поля 1 ниже доступности поля 2
Создаю базу данных C# WPF при попытки создать класс появилась ошибка: &quot;Несовместимость по доступности: доступность типа поля...

Несовместимость по доступности: доступность типа поля "IBlock[*,*]" ниже доступности поля "blocks"
public class Figure { protected IBlock blocks; public IBlock Blocks { get ...

С ПК1 к ПК2 идет пинг. А с ПК2 к ПК1 не идет пинг. Как сделать что бы с ПК2 шел пинг к ПК1 ?
В работе есть два сети, один старый, другой новый, так говорили. С новой сети можно пинговать старую сеть, а с старого новый не возможно....

Создание внутреннего и внешнего серверов. Создание серверов автоматизации
Алгоритм создания: 1. Создайте приложение или DLL, которое должно выступать в роли сервера автоматиза-ции. Можно использовать любое ранее...

Несовместимость по доступности
Пишет о несовместимости по доступности namespace WindowsFormsApplication1 { public static class SupervisoryService { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru