Einzelnen Beitrag anzeigen

Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#26

AW: 256-Pfadlängenbeschränkung ist in Windows 10 (1607) gefallen

  Alt 17. Okt 2018, 19:51
Einfach überall "\\?\" vorklatschen funktioniert aber nicht. Der Präfix entfernt zwar das Längenlimit von 260 Charakter, leider aber auch das Postprocessing von Pfaden.
Was genau meinst du denn mit Postprocessing von Pfaden? Ich kenne leider nur das Expandieren auf Ebene des Object Managers. Und das funktioniert schon seit NT 3.51 tadellos mit langen Pfadnamen, denn unterhalb des Win32-Subsystems ist das die Normalität. Abgesehen davon hat man auch auf Win32-Ebene die Option \??\ als Präfix zu benutzen um bestimmte Logiken im Betriebssystem zu umgehen.

Mit entsprechenden Windowsapi-Funktionen kann man einen Pfad zuvor normalisieren.
Beispiel? Was genau meinst du hier? Umwandlung von relativen in absolute Pfade? Also im Grunde MSDN-Library durchsuchenGetFullPathName und die nativen Freunde davon, welche in dem oben verlinkten Artikel erwähnt werden?

Bei uns habe ich damals extra einen Datentyp eingefügt, der dies Implizit macht.
Und genauso macht man das auch , es sei denn es ist anderweitig in der Logik verankert.

Generell empfiehlt es sich erst dann in den Longpath zu wandeln, wenn man auch wirklich auf Dateien zugreifen muss.
Warum? Was ist denn schädlich daran generell mit langen Pfadnamen zu arbeiten? Denn wenn sich eine Empfehlung ergibt, scheint es ja einen Nachteil bei der Nutzung langer Pfadnamen zu geben. Mit ist kein Nachteil bekannt, bin daher auf die Antwort schon gespannt.

Ach ja, noch als Nachtrag zu meinem vorherigen Beitrag: shlwapi ist beispielsweise ganz schlimm in Sachen hartkodierte Beschränkung auf MAX_PATH, ebenso weitere Teile der "Shell", während bspw. WIN32_FIND_DATA wieder harmlos ist, weil es hier um ein einziges Segment des Pfads geht und eben nicht um den gesamten Pfad. Das soll an Beispielen erst einmal reichen.
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)

Geändert von Assarbad (17. Okt 2018 um 19:57 Uhr)
  Mit Zitat antworten Zitat