Доброго времени суток, уважаемые форумчане! Я чайник в программировании, в детстве увлекался, но все забыл. По долгу работы требуется:- 1. Загнать список адресов в массив из файла
- 2. По очереди пропинговать каждый
- 3. Недоступные адреса записать в лог с датой и временем пинга
- 4. Выкинуть окно (ошибочное) с кнопкой ОК и инфой по недоступному адресу. один адрес-одно окно
- 5. Зациклить процесс с задержкой 15 минут.
Нашел материал, но как собрать не вспомню:
[*]1. Загнать список адресов в массив из файла
| Код | Set FSO = CreateObject("Scripting.FileSystemObject") Dim arrMass() Dim pathToFile pathToFile = "machines.txt"
Sub GetMachines() On Error Resume Next Dim strText Set objTextFile = FSO.OpenTextFile(pathToFile, 1, True) i = 0 Do While objTextFile1.AtEndOfStream <> True strMachine = objTextFile.ReadLine ReDim Preserve arrMass(i + 1) arrMass(i) = strText i = i + 1 Loop ReDim Preserve arrMass(i - 1) i = 0 objTextFile.Close End Sub
|
[*]2. Поочередной пинг IP адресов. (Здесь ведется полный лог, и отображаются сообщения о любом результате)
| Код | For Each strMachine In arrMass Ping(strMachine) Next
Function Ping(machineName) On Error Resume Next Dim objStatus Dim objPing
Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}")._ ExecQuery("select * from Win32_PingStatus where address = '"_ & machineName & "'") For Each objStatus In objPing If IsNull(objStatus.StatusCode) or objStatus.StatusCode<>0 Then ' Записать в файл информацию Set FSO = CreateObject("Scripting.FileSystemObject") Set LogFile = FSO.OpenTextFile(LogFilePath, 8, True) LogFile.WriteLine Now & " " & compip & " доступен" LogFile.Close
'MsgBox compip & " пингуется :) " Else ' Записать в файл информацию Set FSO = CreateObject("Scripting.FileSystemObject") Set LogFile = FSO.OpenTextFile(LogFilePath, 8, True) LogFile.WriteLine Now & " " & compip & " ytдоступен" LogFile.Close
'MsgBox compip & " пингуется :) " End If Next End Function
|
Все вместе не работает. Под руками кроме блокнота нет ничего, проверить ошибки негде. Прошу проверить и по возможности указать на недочеты, и пояснить, как исправить сию ситуацию. Буду очень благодарен, так, как облегчится жизнь значительно) |