Проверка Центра обновления Windows с помощью VBScript
Есть кто-то сценарий / или может помочь мне проверить, есть ли обновление Windows для сервера?
Поэтому я получу письмо, когда на панели задач появится желтый значок обновления.
Моя идея заключается в следующем: отправить письмо, если wuauclt.exe более 10 минут в панели задач.
Но я понятия не имею, чтобы сделать это.
Я нашел только это:
Dim strComputer, strProcess
Do
strProcess = inputbox( "Please enter the name of the process (for instance: explorer.exe)", "Input" )
Loop until strProcess <> ""
Do
strComputer = inputbox( "Please enter the computer name", "Input" )
Loop until strComputer <> ""
If( IsProcessRunning( strComputer, strProcess ) = True ) Then
WScript.Echo "Process " & strProcess & " is running on computer " & strComputer
Else
WScript.Echo "Process " & strProcess & " is NOT running on computer " & strComputer
End If
Спасибо за помощь.
2 ответа
Как насчет чего-то вроде этого
'Microsoft magic
Set updateSession = CreateObject("Microsoft.Update.Session")
Set updateSearcher = updateSession.CreateupdateSearcher()
Set searchResult = updateSearcher.Search("IsInstalled=0 and Type='Software'")
'End Microsoft magic
If searchResult.Updates.Count <> 0 Then 'If updates were found
'This is where you add your code to send an E-Mail.
'Send E-mail including a list of updates needed.
'This is how you can list the title of each update that was found.
'You could include the list in the body of your E-Mail.
For i = 0 To searchResult.Updates.Count - 1
Set update = searchResult.Updates.Item(i)
WScript.Echo update.Title
Next
End If
Вполне возможно, что wuauclt может работать более 10 минут, не обязательно уведомляя пользователя о наличии ожидающих обновлений.
Я знаю, что это Stackru, и это вопрос программирования, но я системный администратор, и я считаю, что это относится к ServerFault, и вы делаете это неправильно. WSUS ( http://technet.microsoft.com/en-us/wsus/default.aspx) предназначен для управления обновлениями Windows.