724874

Systemdatum ändern und wieder zurückstellen

Anforderung

Zeitaufwand

DatumsspieleWie läßt sich das Systemdatum ändern und automatisch wieder zurückstellen? Hier die ultimative Lösung.Es gibt eine Reihe von Gründen, die ein vorübergehendes Umstellen des Systemdatums erfordern: Sie möchten etwa den Testzeitraum von Software verlängern, ein Jahr-2000-Problem innerhalb eines Programms testen oder einfach eine neue Datei mit einem bestimmten Erstellungsdatum anlegen. All das ist mit dem Tool SETDATE.BAT (siehe Listing am Ende des Tips) sehr komfortabel lösbar. Kopieren Sie SETDATE.BAT in das Verzeichnis \Windows\Command, und vergewissern Sie sich, daß DEBUG.EXE und CHOICE.COM dort ebenfalls vorhanden sind (das ist an sich Standard).Diese kleinen Vorbereitungen ermöglichen Ihnen nun Datumsmanipulationen aller Art, die Sie bequem über passende Verknüpfungen definieren. Ein Beispiel: Sie möchten das Programm XYZ.EXE mit dem Datum 1.1.90 starten. Dazu legen Sie am Desktop oder im Start-Menü eine neue Verknüpfung an - mit dieser Befehlszeile:setdate.bat 01.01.1990 x:\pfad\xyz.exeDas ist an sich alles. Prüfen Sie aber in der DOS-Box mit "date", ob die deutschen Ländereinstellungen mit dem Datumsformat TT.MM.YYYY gelten. Wenn nicht, ist das kein Problem, da Sie in der Verknüpfung auch jedes andere Format eingeben können. Als kosmetische Verbesserung sollten Sie unter "Eigenschaften, Programm" die Ausführung als Symbol und "Beim Beenden schließen" festlegen.

Bei sehr langen Pfadangaben stoßen Sie eventuell an ein internes Limit: Die Befehlszeile einer DOS-Verknüpfung kann maximal 84 Zeichen aufnehmen. Auch das ist kein wirkliches Problem, da Sie DOS-Variablen verwenden, und so etwa "c:\programme\internet explorer\" durch "%ie%" abkürzen können. Voraussetzung: Sie haben diese Variable in der AUTOEXEC.BAT mit "set ie=c:\..." gesetzt.Während Setdate kurz nach Start des gewünschten Programms das echte Datum zurücksetzt, wartet die fast identische Variante SIMDATE.BAT (siehe Listing am Ende des Tips) auf den Abschluß des Programms, bis es wieder das korrekte Datum setzt. Diese Variante eignet sich für Software-Tests, die bestimmte Datumsprobleme (etwa Jahr 2000) verifizieren sollen.Wer statt COMMAND.COM einen alternativen Standardinterpreter benutzt, kann komplizierte Anpassungen vermeiden, indem er die Befehlszeile der Verknüpfung einfach mit "command.com /c setdate.bat..." einleitet. Weitere Erläuterungen zur Arbeitsweise des Listings finden Interessierte in der SETDATE.TXT auf Heft-CD.LISTING SETDATE.BAT@echo offecho n c:\pwdatum.$$$ > c:\pwlist.$$$echo r cx >> c:\pwlist.$$$echo 0B >> c:\pwlist.$$$echo r bx >> c:\pwlist.$$$echo.>> c:\pwlist.$$$echo w 115 >> c:\pwlist.$$$echo q >> c:\pwlist.$$$echo.>> c:\pwlist.$$$echo.|date >c:\pwdatum.$$$debug c:\pwdatum.$$$ <c:\pwlist.$$$date %1%2choice /c:j /t:j,10date < c:\pwdatum.$$$del c:\pw*.$$$LISTING SIMDATE.BAT@echo offecho n c:\pwdatum.$$$ > c:\pwlist.$$$echo r cx >> c:\pwlist.$$$echo 0B >> c:\pwlist.$$$echo r bx >> c:\pwlist.$$$echo.>> c:\pwlist.$$$echo w 115 >> c:\pwlist.$$$echo q >> c:\pwlist.$$$echo.>> c:\pwlist.$$$echo.|date >c:\pwdatum.$$$debug c:\pwdatum.$$$ <c:\pwlist.$$$date %1start /w %2date < c:\pwdatum.$$$del c:\pw*.$$$

PC-WELT Marktplatz

724874