Die Unkenntnis des Gesetzes befreit nicht von der Verantwortung. Aber die Kenntnis oft.
- Stanislaw Jerzy Lec -
BgInfoEnhancer ist eine Erweiterung zu BgInfo , das von Bryce Cogswell (ehemals Sysinternals) geschrieben wurde. Es ist in der Lage verschieden Systemparameter auf den Desktophintergrund zu schreiben. Mit dieser Erweiterung kann man beliebige Registrywerte auslesen, auswerten und mit zur Anzeige bringen.
@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.
![]()
Es kommt immer wieder vor, das man mehrere PCs oder Server überwachen will, ohne viel Aufwand dafür treiben zu müssen. Um das recht schnell tun zu können, habe ich ein kleines, unkompliziertes Ping-Tool geschrieben, das auch eine Logdatei schreiben kann. Eine Auswertung zu einen späteren Zeitpunkt ist also möglich.
' -------------------------------------------------- ' FeiertageLocal.vbs ' Clientseitiges eintragen von Feiertagen in Outlook ' 15.01.2008 Wolfgang Führer ' -------------------------------------------------- ' Const Const olAppointmentItem = 1 Const ForAppending = 8 Const olFolderCalender = 9 ' EndConst Dim arrAppointmentsDate() 'array für termine datum Dim arrAppointmentsSubject() 'array für termine text Dim objOutlook Dim intFrom 'ab diesem jahr intFrom = 2008 Dim strLogName 'name des logfiles strLogName = "FeiertageLocal.log"