Windows: Umgang mit langen Dateinamen sowie Systemgerätenamen wie com1, com2, com3 etc. im Dateinamen

Windows: Umgang mit langen Dateinamen sowie Systemgerätenamen wie com1, com2, com3 etc. im Dateinamen

Seltsamerweise kann man in Windows keine Datei mit dem Namen com2.txt erzeugen.
(Jetzt machen für mich auch einige Verzeichnisse Sinn, die ich vor langer Zeit auf mißbrauchten FTP Servern gesehen hatte..)
Und.. immer wieder treten Dateien auf, die so tief in der Verzeichnis-Hierarchie sind, daß man mit ihnen.. nichts mehr machen kann.

Zu viele Zeichen

Diese Problem tritt gelegentlich auf, wenn in einem Windows-Programm die Datei erzeugt wird, das an dieser Stelle relative Pfade benutzt. Hier scheint sich Windows nicht zu beschweren, wenn es in der Summe zu einer Pfadlänge > MAX_PATH kommt.

So ist eine Möglichkeit, mit diesem Problem umzugehen, einen übergeordneten Ordner z. B. in „a“ umzubenennen, und so den Pfad schrittweise zu verkürzen, bis man die Datei normal benutzen kann – normalerweise heißt das: an einen anderen Ort kopieren oder auch den Dateinamen kürzen.

Die Lösung unten funktioniert hier jedoch auch sehr gut.

com1, com2, com3, com4..

Gefunden bei Superuser habe ich die Möglichkeit, per UNC Pfad auf sowohl diese Dateien wie auch auf lange Pfade zuzugreifen.

Das funktioniert zum einen, wenn man den umgebenden Ordner im Netzwerk freigegeben hat (dort kann man z. B. auch über

\\localhost

oder auch

\\localhost\c$

zugreifen), etwas allgemeiner jedoch auch, wenn man eine

\\?\c:

Notation benutzt, für die man keine Freigabe haben muß. Diese Notation funktioniert dann jedoch nicht im Windows Explorer sonder auf cmd-Ebene.

.net Programme können teilweise auch mit UNC Pfaden umgehen.

Mit dieser Notation lassen sich wohl sogar 32k Zeichen lange Pfade erzeugen – nur daß man das nicht machen sollte, außer man möchte Daten verstecken.

Unsinn

Mit

echo a > "\\?\c:\users\andreas\desktop\com2.ich kann nicht gelöscht werden.txt"

kann man einem Benutzer Andreas unter Windows 8 übrigens ein Ei legen. Er hat dann eine erstmal nicht zu öffnende, nicht zu löschende, nicht verschiebbare Datei auf dem Desktop. Löschen läßt sich die Datei jedoch wieder, indem man ein del mit dem gleichen Pfad durchführt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.