718710

Class-IDs als Ordnernamen

Anforderung

Fortgeschrittener

Zeitaufwand

Gering

Unter Windows 9x darf an sich jeder alles. Das Dateisystem sieht keine Rechtevergabe für Ordner und Dateien vor. Das ist nicht jedem recht - trotzdem wollen sich viele nicht deshalb gleich mit einem Server-Betriebssystem anfreunden.Die Vergabe von Windows-Class-IDs als Ordnernamen ist eine sehr einfache Maßnahme, für Ordner zumindest eine Art Kindersicherung zu erzielen. Windows interpretiert einen solchen Ordner dann nicht mehr als Dateicontainer, sondern als spezielle Systemkomponente. Statt der enthaltenen Dateien zeigen Windows und die Dialoge von Windows-Anwendungen etwa den Inhalt der Systemsteuerung (Class-ID \{21EC2020-3AEA-1069-A2DD-08002B30309D\}) oder Internet-Channels (Class-ID \{F3AA0DC0-9CC8-11D0-A599-00C04FD64434\}) an. Dies sind die beiden IDs, die wir für diesen Zweck am wirksamsten ansehen. Sie funktionieren auf jedem Windows ab Version 95 A.

Die einfachste Möglichkeit besteht darin, die Class-ID schlicht als Extension an den Dateinamen anzuhängen. Die umständlichere Möglichkeit, einen Ordner als Systemordner zu maskieren, ohne ihn umzubenennen, führt über eine DESKTOP.INI und einige Attribut-Aktionen. Das abgebildete VBS-Script MOVE.VBS (siehe Listing am Ende) übernimmt diese Aufgabe. Sie brauchen lediglich den voreingestellten Ordner E:\Aktuell durch den Ordner Ihrer Wahl zu ersetzen.Achtung!!! Das Windows-Verzeichnis, Unterverzeichnisse desselben und den Programme-Ordner sollten Sie keinesfalls umbenennen! Das System würde sie nicht mehr finden.LISTING MOVE.VBSSet pcw8 = CreateObject("Scripting.FileSystemObject")ordner="e:\aktuell"'Pfadangabe bitte anpassen!hidden=ordner + ".\{F3AA0DC0-9CC8-11D0-A599-00C04FD64434\}"if (pcw8.FolderExists(ordner)) thenpcw8.movefolder ordner,hiddenelseif (pcw8.FolderExists(hidden)) thenpcw8.movefolder hidden,ordnerelsewscript.echo "Verzeichnis fehlt. Bitte korrekten Ordner eintragen..."end ifend if

0 Kommentare zu diesem Artikel
718710