none
Script que lista as máquinas que não instalaram o hotfix KB958644 RRS feed

  • 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 Sub

    Set 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

    quarta-feira, 5 de novembro de 2008 17:01

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"

     

     

    quarta-feira, 5 de novembro de 2008 18:38
    Moderador

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"

     

     

    quarta-feira, 5 de novembro de 2008 18:38
    Moderador
  •  

    Muito Obrigado!
    quinta-feira, 6 de novembro de 2008 10:24
  •  

    Flwss..

     

    Só não esqueça de classificar..

     

    Abs

    terça-feira, 11 de novembro de 2008 08:54
    Moderador