• News
  • Ratgeber
  • Vergleiche
  • Tests
  • Business & IT
  • Home
  • Bildergalerie
  • Profitipps zu Windows

Galerie

Profitipps zu Windows

22.12.2011 von Daniela Schrank

Wir erklären Ihnen, wie Sie unter anderem per Batch-Programm direkt auf die Registrierdatenbank sowie auf VB-Script-Funktionen zugreifen.

image.jpg
© PC Magazin
1 6

Eine Setx-Definition ist erst in später geöffneten DOS-Fenstern sichtbar und wirksam.

Tipp 1: Globale Umgebungsvariablen

Manche Programmabläufe benötigen Variablen, die allen Anwendungen zur Verfügung stehen.

Wenn Sie im DOS-Fenster mit dem Set-Befehl Variablen definieren, so stehen sie nur in diesem DOS-Fenster bereit. In früheren Windows-Versionen mussten Sie feste Werte entweder in der Systemsteuerung unter System/Erweitert/Umgebungsvariablen/Neu manuell setzen oder flexible Daten als Datei transportieren. Windows Vista und Windows 7 liefern dafür den Befehl Setx. Damit kann man Variablennamen sowie zugehörige Daten entweder allen Fenstern des aktuellen Anwenders oder allen Anwendern auf dem ganzen System zur Verfügung stellen.

Setx befindet sich auch in den Windows XP Support Tools for Advanced Users, in den Windows 2000 Resource Kit Tools oder kann bei Microsoft als Einzeldatei geladen werden. Die Anweisungsfolge setx TempvarWert definiert die Umgebungsvariable Tempvar auf dem lokalen System für alle Fenster des aktuellen Anwenders.

Eingeschränkt gilt, dass dieser Wert erst in DOS-Fenstern bereitsteht, die nach der Variablendefinition angelegt werden. Um im aktuellen DOS-Fenster die Setx-Werte sofort zu verwenden, muss man sie mit dem Set-Befehl kombinieren:

setx Tempvar Wert
set Tempvar=Wert

Wie man sieht, unterscheidet sich die Syntax der beiden Befehle. Soll eine Umgebungsvariable in allen Fenstern aller Anwender verwendbar sein, nimmt man den Parameter /M, der allerdings Administratorrecht erfordert: setx Tempvar Wert /m Der Parameter /M schreibt dann die Daten nicht in HKEY_CURRENT_USER, sondern in den Registrierungsschlüssel HKEY_LOCAL_MACHINE.

Anzeige
image.jpg
© PC Magazin
2 6

n der Windows-Oberfläche (System/Erweitert/Umgebungsvariablen) wird jede Setx-Definition sofort gültig.

Tipp 2: Umgebungsvariablen aus der Registry

Viele interessante Daten verbergen sich in der Registrierdatenbank. Etliche davon verwerten Sie gewinnbringend in Batch-Programmen.

In der Registrierdatenbank ist praktisch alles gespeichert, was Windows betrifft. Die Auswertung bestimmter Werte in der Registry war mit Windows-Bordmitteln in früheren Windows-Versionen nicht möglich.

Mit dem Setx-Befehl lässt sich hier eine Brücke schlagen, indem Setx auf Zeichenketten- sowie Dwort-Werte aus der Registrierdatenbank zugreifen kann und sie in einer definierten Umgebungsvariablen ablegt. Ein Batch-Programm kann diese Informationen dann per Standardbefehl Set aufgreifen und auswerten. Die folgende Sequenz legt als Beispiel die Dateiposition der Bilddatei des Desktop-Hintergrundes sowie deren Namen als kompletter Pfad in der Variablen Tempvar ab:

setx Tempvar /k "HKEY_CURRENT_USER\Control Panel\Desktop\
Wallpaper"

Da sich im Registry-Namen ein Leerzeichen befindet, ist es notwendig, den ganzen Schlüssel in Anführungszeichen zu setzen. In einem Stapelverarbeitungsprogramm verwenden Sie beispielsweise jeden Wochentag ein anderes Hintergrundmotiv, indem Sie Tempvar auswerten. Die Informationen aus der Registrierdatenbank führen in Kombination mit dem Setx-Befehl zu völlig neuen Einsatzgebieten in Batch-Programmen.

Anzeige
image.jpg
© PC Magazin
3 6

Die Variable Testvar lässt sich nur in der Windows-Oberfläche löschen.

Tipp 3: Rückwärtsgang für globale Umgebungsvariablen

Mit Setx lassen sich zwar globale Umgebungsvariablen setzen, nicht aber wieder löschen.

Die mit Setx definierten Umgebungsvariablen bleiben auf einem lokalen oder Remote-System auch nach einem Neustart verfügbar, bei Letzterem stehen sie sogar dann erst bereit. Die Werte einer so definierten Umgebungsvariablen lassen sich - wie der Name schon sagt - zwar beliebig oft ändern, inkonsequenterweise mit Setx jedoch nicht löschen.

Die Anweisungsfolgen setx Testvar " " führen dazu, dass Setx der Variablen Testvar entweder ein Leerzeichen oder eine leere Zeichenkette zuordnet, den Variablennamen aber dennoch beibehält. Die entsprechenden Umgebungsvariablen lassen sich jedoch unter Systemsteuerung/System/Erweiterte Systemeinstellungen/Umgebungsvariablen manuell löschen. Wurde die Variable mit dem Setx-Schalter /M definiert, so findet sie sich bei Systemvariablen, ansonsten unter Benutzervariablen.

Anzeige
image.jpg
© PC Magazin
4 6

Je nach Betriebssystemversion sowie installiertem Service-Pack müssen Sie manchmal weitere Netzwerkprogramme per Systemsteuerung/Software/Windows-Komponenten hinzufügen.

Tipp 4: Mach mal Pause

Selbst mit reinen Windows-Bordmitteln und Zusatzprogrammen lassen sich Pausen in Batch-Dateien realisieren.

Auch ohne den bei Vista und Windows 7 vorhandenen Befehl Timeout oder Zusatzprogramme wie der Befehl Sleep im kostenlosen Windows Server 2003 Resource Kit von Microsoft bestehen noch zwei weitere Methoden, um Wartezeiten in Stapelverarbeitungsdateien herzustellen. Beide Verfahren kann man zwar nicht gerade als elegant bezeichnen, doch sind sie neben der Problemlösung auf einem beliebigen PC schon mit Windows-XP-Systemen verwendbar.

Die erste Methode verwendet den Ping-Befehl, der möglicherweise in der Windows-Standardinstallation noch nicht enthalten ist. Über Systemsteuerung/Software/Windows-Komponenten hinzufügenoder ändern/Netzwerkdienste rüsten Sie den Befehl im Setup nach. Windows 7 liefert Ping standardmäßig. Der Befehl ping localhost -w 100>nul sowie das identische Gegenstück ping 127.0.0.1 -w 100>nul bewirkt, dass das Programm versucht, das lokale System zu erreichen, wobei der Schalter -w das Zeitlimit in Millisekunden definiert. Obgleich diese Lösung auf jedem Windows-PC mit Netzwerkprogrammen funktioniert, ist die Wartezeit so nicht exakt festlegbar.

Anzeige
image.jpg
© PC Magazin
5 6

P ause im Arbeitsablauf: Hier setzen Sie dazu Ping-Befehl und VB-Script-Methoden ein.

Tipp 5: Noch mehr Pausen

Um Pausen unter Windows zu erzwingen, lassen sich Stapelverarbeitungen auch um VBA-Befehle erweitern.

Ein völlig anderer Ansatz, um definierte Wartezeiten zu erzeugen, nutzt die Fähigkeiten der Windows-Scriptsprachen:

echo wscript.sleep 8000>bla.vbs
cscript bla.vbs>nul

Zuerst legen Sie dabei per Eingabeumleitung die temporäre Datei bla.vbs an, in der sich lediglich eine Anweisungszeile in VB-Script-Syntax befindet. Der Wert nach wscript.sleep definiert die Wartezeit in Millisekunden, hier also acht Sekunden. Die Folgezeile ruft den Windows Script Host auf, der dann die gerade erzeugte Datei ausführt. Wer möchte, kann die temporäre Datei bla.vbs noch löschen.

Diese wird bei dem nächsten Aufruf aber ohnehin überschrieben oder neu angelegt. Die zweite Methode, mit Windows-Bordmitteln eine Wartezeit zu bestimmen, zeigt u.a. auch, dass sich unterschiedliche Programmierumgebungen - hier Stapelverarbeitungsprogramme und VB-Script - durchaus miteinander kombinieren lassen. Auf ähnliche Weise verzahnen Sie übrigens auch VB-Script und Java miteinander, wodurch die Vorteile der diversen Programmierumgebungen gezielt nutzbar sind.

Anzeige
image.jpg
© PC Magazin
6 6

I neinander verschachtelte leere Programmschleifen führen in beliebigen Programmiersprachen zu einer Wartepause.

Tipp 6: Pausen per Programmschleifen

Wartezeiten lassen sich in jeder Programmierumgebung auch durch Programmschleifen erzielen.

In Programmschleifen wie etwa For-Next-, Do-Loop, Do-While- oder Repeat-Until-Konstrukten werden üblicherweise Anweisungsfolgen so lange wiederholt, bis ein Endkriterium erreicht ist. Ohne enthaltene Anweisungen benötigt die Ausführung von Programmschleifen aber auch ein wenig Zeit, sofern nicht ein intelligenter Compiler den Trick bemerkt. Sehr hohe Schleifendurchläufe erzwingen also auch Wartezeiten. So lassen sich beispielsweise Schleifen ineinander schachteln, um eine hohe Anzahl von Schleifendurchläufen zu erzielen:

for a=1 to 100000
for b=1 to 10000
next b
next a

Beide Schleifendurchläufe multiplizieren sich so zu einer Milliarde Durchgängen und sind leicht erhöhbar. Dieser Ansatz besitzt allerdings zwei deutliche Nachteile. Zum einen hängt es von der Geschwindigkeit des PCs ab, wie lange er die Schleifendurchgänge abarbeitet. Zum anderen wird dadurch nicht wirklich pausiert, vielmehr arbeitet der aktuelle Prozess unter voller Last, wenn auch ohne Ergebnis. Sofern also unterschiedliche Prozesse aufeinander abgestimmt werden sollen, ist die Methode mit leeren Schleifendurchläufen ungeeignet.

image.jpg
image.jpg
image.jpg
image.jpg
image.jpg
image.jpg
  • image.jpg
    Eine Setx-Definition ist erst in später geöffneten DOS-Fenstern sichtbar und wirksam.
  • image.jpg
    n der Windows-Oberfläche (System/Erweitert/Umgebungsvariablen) wird jede Setx-Definition sofort gültig.
  • image.jpg
    Die Variable Testvar lässt sich nur in der Windows-Oberfläche löschen.
  • image.jpg
    Je nach Betriebssystemversion sowie installiertem Service-Pack müssen Sie manchmal weitere Netzwerkprogramme per Systemsteuerung/Software/Windows-Komponenten hinzufügen.
  • image.jpg
    P ause im Arbeitsablauf: Hier setzen Sie dazu Ping-Befehl und VB-Script-Methoden ein.
  • image.jpg
    I neinander verschachtelte leere Programmschleifen führen in beliebigen Programmiersprachen zu einer Wartepause.
Bild Vollbildansicht
[X] 6
[Titel]
kaufen
Anzeige
[Copyright / Quelle]
Galerie scrollen
Weiter zur Startseite  

Meistgelesen

Neuerscheinungen in der Übersicht

Netflix: Neue Filme und Serien im März 2023

Auf Nimmerwiedersehen

Festplatte sicher löschen: So säubern Sie HDD und SSD…

Vorschau auf Film- und Serien-Highlights

Amazon Prime Video: Neuheiten im März 2023

PSN-Integration

PS4/PS5: So nutzt man Discord mit der Sony-Konsole

Streaming-Neuheiten

Disney+: Neue Filme und Serien im April 2023

Die neuen Ausgaben

PC Magazin Super Premium 04-2023

Die neue Ausgabe ist da

Ausgabe 04/2023 jetzt online bestellen

!Windows fit für 2023, Rubber Ducky in Version 2.0, Vergleichstest von Grafikkarten, Mehr Geld: Digital sparen u.v.m.

Aktuelle Gutscheine

Gutscheine

Eneba – Rabattcode für Spiele, PSN etc.

Gutscheine

Galaxus – Smartphones, Haushalt, u.v.m.

Gutscheine

Lieferando - Lieferservice mit Rabatt

Gutscheine

Aktuelle Rabattcodes, Coupons, Angebote

Lohnt es sich?

Amazon BlitzangeboteAktion Overlay

Hardware, Software und mehr

Amazon-Angebote: Intel NUC 11, Pixel 6a, Roku Express und…

!Die aktuellen Highlights der Amazon-Angebote sind heute: Intel NUC 11, Pixel 6a, Roku Express und mehr.

Tests & Kaufberatung

Kaufempfehlung

Spülmaschinen Angebote: Fünf Modelle für sauberes Geschirr

Mit Akku: Einfach per USB aufladbar

Pearl Fahrradlicht im Test: Doppelpack für vorne und hinten

Ein charmantes und magisches Abenteuer

Tchia im Test für PlayStation 5

HDR-Gaming-Displays

HDR-Gaming-Monitore im Vergleich: Viewsonic vs. Philips

Wildkamera

Braun Scouting Cam Black 200 Mini im Test
70,0%

Immer aktuell informiert

Brief

Jetzt bestellen!

Kostenlose Newsletter

!Newsletter

Aktuelle Ratgeber

Arbeitsspeicher sparen

Firefox: RAM-Verbrauch optimieren und reduzieren

Aktuelle Charts im März 2023

Netflix Top 10: Beliebteste Serien und Filme in Deutschland

Neuerungen & Releases

Unreal Engine 5: Was kann die Engine und welche Spiele gibt…

Hardware, Software und mehr

Amazon-Angebote: Intel NUC 11, Pixel 6a, Roku Express und…

Jahresvorschau auf Film- und Serien-Highlights

Amazon Prime Video: Film- und Serien-Starts 2023
Anzeige

Zum Seitenanfang
  • News
    • Alle News
  • Ratgeber
    • Windows
    • Sicherheit
    • Hardware
    • Software
    • Heimkino
    • Heimvernetzung
    • Gaming
    • Alle Ratgeber
  • Vergleiche
    • PC
    • Heimkino
    • Software
    • Gaming
    • Heimvernetzung
    • Alle Vergleiche
  • Tests
    • Hardware
    • Software
    • Heimkino
    • Heimvernetzung
    • Gaming
    • Bestenlisten
    • Alle Tests
  • Business & IT
    • IT-Hardware
    • IT-Software
    • Alle B2B-Themen
  • Downloads
    • Top-Downloads
    • Neuzugänge & Updates
    • Alle Downloads
  • Specials
    • IFA
    • Themenseiten
    • Games
    • Kachel Chaos Spiel
    • Kartenchaos
    • Kartenchaos Classic
    • Gewinnspiele
    • Archiv
  • Service
    • Abo-Shop
    • Kontakt
    • Newsletter
    • Bildergalerien
    • Gutscheine
  • connect
  • Computer&Automation
  • connect professional
  • connect channel
  • elektroniknet.de
  • LANline
  • Medical Design
  • Abos
  • Newsletter
  • RSS
  • Archiv
  • Datenschutz
  • Mediadaten
  • Kontakt
  • Impressum
© 2023 WEKA Media Publishing GmbH. Alle Rechte vorbehalten.