Einleitung
Mit dem Programm BGInfo werden Bildschirm-Hintergrundbilder generiert, wo man diverse Informationen einblenden kann. Es gibt zahlreiche vordefinierte Felder, die man verwenden kann. Zusätzlich können eigene Text-Dateien, VB-Skripte, Ausgaben von WMI-Abfragen, Registry-Werte angezeigt werden.
Vorab:
Sie benötigen die Freeware Bginfo von Sysinternals.
Arbeitsweise
Für die Aktualisierung der Hintergrundinformationen mit Bginfo benötigt man einen Aufruf als Taskplaner. Der normale Aufruf von Bginfo in einer Batchdatei erfolgt mit einem Einzeiler dieser Art:
Bginfo.exe /timer:0 /iq meinset.bgi
Eigene Erweiterungen mit Skripten kann man auf 2 Arten erledigen:
- Nutzung des benutzerdefinierten Feldes eines VBScripts
- Nutzung des benutzerdefinierten Feldes einer Dateiausgabe
VBScripte lassen sich also direkt als Custom-Feld integrieren. Eine Beschreibung befindet sich in der Hilfe von Bginfo - daher gehe ich nicht weiter darauf ein.
Um Batch-Dateien zu nutzen, muss man den Umweg über die Dateien nehmen. Ich erweitere dazu meinen Wrapper zum Aufruf von bginfo. Vor dem Aktualisieren des Hintergrundes starte ich zunächst meine Batchdateien, leite deren Ausgabe in eine Datei um. In meinem Set habe ich Custom-Felder mit der Ausgabe von Dateien definiert.
Soweit das Ganze verdaut?
Wenn man schon beim Skripten ist ... wenn sich einige Tests anhäufen würden und die Ausgabe jedes Tests mich mit Infos überhäuft, statt auf wirklich wichtige Sachen hinzuweisen, habe ich nicht viel gekonnt.
Bringen wir also etwas Ordnung in ein vielleicht drohendes Chaos:
- alle meine Batch-Dateien befinden sich in einem Unterverzeichnis "plugin-scripts"
- Ich kategorisiere meine Batch-Tests in die Rubrik "Warnungen" und "Fehler"
Das geht einfach über den Dateinamen - [Name_des_Tests]_warning.bat bzw. [Name_des_Tests]_error.bat. - Alle Batchdateien einer Rubrik werden in je eine Textdatei pro Rubrik umgeleitet.
Mittels FOR-Schleife werden alle Batchfiles in alphabetischer Reihenfolge abgeklappert und umgeleitet - die Warnungen werden nach c:\bginfo_custom_warnings.txt geschrieben und die Fehlermeldungen nach c:\bginfo_custom_errors.txt - Um die Informationsflut einzudämmen, geben meine Batchtests nicht in jedem Fall etwas aus, sondern nur, wenn eine Warnung festgestellt wurde.
- In der GUI von Bginfo werden 2 Customfelder definiert, die die Textdateien für Warnungen und Fehlermeldungen aufnehmen. Dies Customfelder werden in das Ausgabe-Template eingefügt. Wer mag kann die Fehler rot und die Warnungen gelb ausgeben lassen.
Mein Wrapper-Batchfile liegt im selben Ordner, wie Bginfo, sieht dann etwa so aus:
Meine Verzeichnisstruktur sieht nun so aus: im Programmverzeichnis befindet sich mein Wrapper (_wrapper_bginfo.bat) und das Template (set001.bgi).
Im Unterordner "plugin-scripts" sind meine einzelnen Tests:
[bginfo-root] | | Bginfo.exe | _wrapper_bginfo.bat | Eula.txt | set001.bgi | \---plugin-scripts birthday.txt birthday_warning.bat missing_services_error.bat showdate.exe
Das Plugin für Geburtstage wertet Einträge in der birthday.txt aus - hier stehen Namen und Geburtstage in der Form [Jahr-Monat-Tag]:[Name] drin. Es werden die in diesem und nächsten Monat noch folgenden Geburtstage angezeigt.
Es wird hierfür die showdate.exe benötigt.
Das andere Beispiel testet eine (beim ersten Start angelegte) Textdatei mit den Namen der Dienste, ob diese alle laufen.
Dies funktioniert mit Hilfe des Komandos net start.
Screenshots
Nach dem Aufruf von Bginfo:
Durch Klick auf den Schalter Custom kann man eigene Felder definieren:
Mit dem Schalter "add" fügt man sie in das Template ein (man kann die Namen natürlich auch tippen) und anschliessend einfärben. Meine Customfelder sind ganz unten unterhalb "Messages".
Und so kann es dann auf dem Desktop aussehen.
Download
examplebginfo.zip (23,1 kB)