Usuário com melhor resposta
Script que lista as máquinas que não instalaram o hotfix KB958644

Pergunta
-
Boa Tarde,
Alguém poderia me ajudar estou tendo um problema para listar máquinas que não foram instalado o patch KB958644, eu não consigo fazer com que o script retorne uma resposta caso a máquina não tenha o hotfix.
Segue o codigo abaixo.
on error resume next
Dim oNet, Computers, Lercomp, Arquivos
Public Sub Grava(lercomp)
Const ForAppending = 8
arq_ext = "VerifyPatch.log"
Set fso = CreateObject("Scripting.FileSystemObject")
Set arq_int = fso.OpenTextFile(arq_ext , ForAppending, true)
data = now()
arq_int.write (lercomp & vbcrlf)
arq_int.close
End SubSet arquivos = CreateObject("Scripting.FileSystemObject")
Set Computers = arquivos.OpenTextFile("Computers.txt")Do Until computers.AtEndOfStream
Lercomp = Computers.ReadLine
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & lercomp & "\root\cimv2")
'Set colQuickFixes = objWMIService.ExecQuery ("Select * from Win32_QuickFixEngineering WHERE HotfixID <> 'File 1' and HotFixID = 'KB958644'")
WScript.Echo(Lercomp & "----------"& Err.Number)
For Each objeto In colQuickFixes
If objeto.HotFixId <> "KB958644" Then
WScript.Echo(objeto.HotFixId)
End if
Next
'If ColQuickFixes = "" Then
' Grava(Lercomp & ";" & "Não Instalado")
'Else
' Grava(Lercomp & ";" & "Instalado")
'End If
Loop
Computers.Close
Respostas
-
Aqui... abs
Set objSession = CreateObject("Microsoft.Update.Session")Set objSearcher = objSession.CreateUpdateSearcher
Set objResults = objSearcher.Search("Type='Software'")
Set colUpdates = objResults.Updates
For i = 0 to colUpdates.Count - 1
If instr(colUpdates.Item(i).Title,"KB958644")<>0 Then
If colUpdates.Item(i).IsInstalled <> 0 Then
Wscript.Echo "ESTÁ INSTALADO"
Wscript.Quit
Else
Wscript.Echo "NÃO ESTÁ INSTALADO"
Wscript.Quit
End If
End If
Next
Wscript.Echo "NENHUMA ATUALIZAÇÃO ENCONTRADA"- Marcado como Resposta Fábio JrModerator sexta-feira, 3 de fevereiro de 2012 17:56
Todas as Respostas
-
Aqui... abs
Set objSession = CreateObject("Microsoft.Update.Session")Set objSearcher = objSession.CreateUpdateSearcher
Set objResults = objSearcher.Search("Type='Software'")
Set colUpdates = objResults.Updates
For i = 0 to colUpdates.Count - 1
If instr(colUpdates.Item(i).Title,"KB958644")<>0 Then
If colUpdates.Item(i).IsInstalled <> 0 Then
Wscript.Echo "ESTÁ INSTALADO"
Wscript.Quit
Else
Wscript.Echo "NÃO ESTÁ INSTALADO"
Wscript.Quit
End If
End If
Next
Wscript.Echo "NENHUMA ATUALIZAÇÃO ENCONTRADA"- Marcado como Resposta Fábio JrModerator sexta-feira, 3 de fevereiro de 2012 17:56
-
-