@echo off :: Dieses Script schaltet das WSUS Icon für User auf dem PC an und auch wieder aus :: PSEXEC.exe wird benötigt color 70 cls echo Dieses Script muss mit Adminrechten der Zielmaschine gestartet werden! echo ====================================================================== echo. :loop echo -------------------------------------- set /p pc=Bitte PC Name eingeben: echo -------------------------------------- echo. echo Stoppe WSUS ... start /wait psexec.exe \\%pc% -accepteula net stop wuauserv echo Aktiviere WSUS Icon ...
@echo off %systemdrive% del %windir%\registration\*.* /Q cd %windir%\system32\wbem for /f %%s in ('dir /b *.dll') do regsvr32 /s %%s wmiprvse /regserver winmgmt /regserver sc config winmgmt start= disabled net stop SharedAccess /y net stop winmgmt /y if exist repository.old rmdir /s/q repository.old rename repository repository.old sc config winmgmt start= auto net start SharedAccess exit
<?xml version="1.0" encoding="utf-8" standalone="yes" ?> - <HiddenStatus> <ServerInfo Name="D-GE-MNG02" WSUSVersion="3.2.7600.226" /> <GeneratingInfo FromDate="10/9/2009 11:47:27 AM" ToDate="1/7/2010 11:47:27 AM" Entries="3402" /> - <HiddenUpdate> <Computer Name="p04521" Date="1/6/2010 10:37:18 AM" /> <UpdateInfo Title="Update for Windows XP (KB971737)" Description="Install this update to help strengthen authentication credentials in specific scenarios. After you install this item, you may have to restart your computer." Severity="Unspecified" />
Imports Microsoft.UpdateServices.Administration Imports System Imports System.Xml Imports System.Collections.Generic Imports System.Text Imports System.IO Module HiddenUpdatesToXML Const usage As String = vbCrLf & "HiddenUpdates.exe creates an HTML file with a " & _ "list of computers where updates are set hidden by users." & _ vbCrLf & vbCrLf & _ "USAGE:" & vbCrLf & vbCrLf & _ " HiddenUpdates.exe 90" & vbCrLf Sub Main(ByVal args() As String)
Microsoft Updates sind eine wichtige Sache - und so möchte man als Administrator diesbezüglich alle Fäden in der Hand haben. Leider gibt es da ein kleine Lücke, die es Usern mit Administratorrechten ermöglicht angewiesene Patche auszubremsen.
Folgende Bilder zeigen wie das passiert.
On Error Resume Next Dim oSearcher, oSearchResult, i, oUpdate Set oSearcher = CreateObject("Microsoft.Update.Searcher") oSearcher.Online = False Set oSearchResult = oSearcher.Search("IsHidden=1") If Err.Number = 0 Then If oSearchResult.Updates.Count > 0 Then For i = 0 To oSearchResult.Updates.Count - 1 Set oUpdate = oSearchResult.Updates(i) oUpdate.IsHidden = False Next End If End If
#Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_Res_Fileversion=1.0.0.5 #AutoIt3Wrapper_UseUpx=n #AutoIt3Wrapper_Res_FileVersion_AutoIncrement=y #AutoIt3Wrapper_Run_Tidy=y #AutoIt3Wrapper_Res_LegalCopyright=Wolfgang Führer #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** ;---------------------------------------------- ; UnhideHiddenUpdates.au3 ; --Beschreibung-- ; Wolfgang Führer ; 07.01.2010 - 11:30:55,06 ;---------------------------------------------- Opt("MustDeclareVars", 0) ;0=no, 1=require pre-declare
Wenn man in einer Domäne sehr viele PCs zu betreuen hat können Fehler beim Patchmanagement per WSUS viel Arbeit machen. Die Maßnahmen um einzelne Fehler zu beseitigen sind bekannt, aber die Menge und die umständliche Handhabung kosten Zeit. Viele dieser Arbeiten habe ich automatisiert und in einem Tool zusammengefasst. Startet man den WSUS-Helper mit administrativen Rechten der Zielmaschinen (Administrator Account) kann man zügig eine Vielzahl von PCs bearbeiten.