http://www.zeropage.de
zeropage is © by the L13-Crew, all part of TUI-NET

Microsoft JUNCTIONs

Ich hab' da mal eine Frage ...

In NTFS v5 gibt es sog. "JUNCTION"s, also so eine Art Links. Eingefuehrt wurde dies vermutlich mit Win2k, da es seit dem ja glaube auch NTFS v5 gibt.

Ich kenne .LNK-Dateien, wie sie meines Wissens nach seit Windows v4 (NT 4.0, Win9x) vorkamen. Nach meinem bisherigen Wissensstand funktionieren "JUNCTION" nicht so wie diese .LNK-Dateien - und das ist auch gut so.

Ich kenne Symlinks und Hardlinks aus Unix/Linux. Aber auch keiner dieser beiden scheint mit einer JUNCTION identisch zu sein.

In diversen Foren - auch auf Microsoft-eigenen Seiten und von Microsoft-Support'lern - liest man sehr haeufig die Antwort, die bei Vista eingefuehrten JUNCTIONS wie z.B. "Documents and Settings" seien zur Abwaertskompatibilitaet. Das finde ich sehr gut, und auch die neue Ordnerstruktur stoesst bei mir nicht auf Kritik - eher im Gegenteil.

Nur was wird denn unter "Abwaertskompatibilitaet" verstanden? Offenbar eben leider NICHT das, was Sym- oder Hardlinks unter Linux/Unix tun, da ich folgendes Verhalten beobachtet habe:

Den letzten Punkt verstehe ich - das ist auch top so, schoen abwaertskompatibel. Aber die ersten beiden Punkte verstehe ich nicht, und das ist ja dann auch nicht abwaertskompatibel (z.B. wenn ein legacy-Programm ueberpruefen moechte, was es denn schon fuer Verzeichnisse von Benutzern lokal gibt).

Die Antwort "Du/das Programm soll doch aber C:\Users benutzen", die ich in vielen Foren gelesen habe, macht leider auch keinen Sinn: aeltere Programme kennen diesen Ordner ja noch nicht. Und wenn jetzt die Antwort kommt "Eben. Muessen sie halt angepasst werden.", dann hat derjenige zwar Recht, aber dann macht der JUNCTION-Ordner wie D&S ja erst recht keinen Sinn, weil deren Sinn ja gerade die (lobenswerte, wenngleich auch fuer den Hersteller aufwaendige) Abwaertskompatibilitaet ist.

Und wenn jetzt wer kommt mit "Du/das Programm soll gar nicht C:\Users oder sonstewas benutzen, sondern %APPDATA% etc." dann hat derjenige auch Recht; meine Ausfuehrungen zu D&S sollen auch nur exemplarisch fuer alle vorgenommenen (und an sich aus meiner Sicht teilweise durchaus auch sinnvollen) Ersetzungen (vgl. Microsoft/MSDN-Seite) sein.

Nicht meinen tue ich dagegen die z.B. deutschen Uebersetzungen, die im Explorer auftauchen, in der Shell jedoch nicht - das ist eine andere Sache. Die werden ueber die desktop.ini gesteuert - Ursache klar, Auswirkung klar, nicht Gegenstand dieser Fragerunde :-)

Dazu kommt noch: JUNCTIONs gibt es also offenbar schon seit Einfuehrung von NTFS v5 bzw. Win2k. Warum ist deren Verhalten dann in Windows 2000 und XP anders als in WinVista und Win7 ("Access is denied" [Explorer] bzw. "The system cannot find the file specified" [Shell])?