Eigentlich kommt man unter Windows eher selten mit den sogenannten alternativen Datenströmen, abgekürzt ADS (Alternate Data Streams) in Berührung. Aber gelegentlich stößt man auf ein Problem, das einem dieses Feature vom Windows-Filesytem NTFS (New Technology File System) wieder in Erinnerung bringt. So ging es mir auch vor einiger Zeit. Der Inhalt einer Hilfedatei im CHM-Format (Compiled Help Module) wurde nicht angezeigt.
Das sieht dann so aus:
Im Inhaltsfenster rechts wird nichts angezeigt. Die Ursache liegt darin, daß diese Datei aus dem Internet heruntergeladen wurde, Windows sich dies seit der Version XP SP2 in einem alternativen Datenstrom merkt und aus Sicherheitsgründen die Anzeige verhindert. Dies erkennt man im Eigenschaftsdialog der Hilfedatei:
Bevor wir jedoch auf den Button „Zulassen“ klicken und damit die Anzeige des Hilfeinhalts wieder erlauben, möchte ich kurz zeigen, an welcher Stelle Windows diese Information zu einer Datei versteckt. Sie findet sich im ADS „Zone.Identifier“. Welche Alternate Data Streams zu einer Datei gehören, lässt sich mit „dir /r“ anzeigen:
Bei dem Helpfile wird nur ein Alternate Data Stream angezeigt, der den Namen „Zone.Identifier“ trägt. Wie kann man sich nun den Inhalt dieses Data Streams anschauen und ggf. auch verändern? Dazu ist das Windows-Programm „Notepad“ sehr hilfreich. Nach dem Aufruf von Notepad mit dem Parameter VirtualTreeview.chm:Zone.Identifier wird im Notepad der Inhalt des Data Streams angezeigt:
Jetzt klicken wir im Eigenschaftsdialog der Hilfedatei auf „Zulassen“ und dann auf „OK“. Zum einen ist jetzt die Inhaltsseite rechts wie gewünscht gefüllt:
Zum anderen ist der ADS zur Datei gelöscht worden:
Zur Anzeige der Data Streams zu einer Datei ist auch das Programm „streams.exe“ sehr hilfreich, das zu dem Sysinternals-Tools von Microssoft gehört und von Mark Russinovich programmiert wurde.
Hier zum Abschluß die Ausgabe von streams.exe, aufgerufen mit der Hilfedatei als Parameter:
[of_autor]