La limitazione di 260 caratteri non è una limitazione del file system, ma dell'API Win32. Win32 definisce MAX_PATH come 260 che è ciò che l'API sta usando per controllare la lunghezza del percorso passato in funzioni come FileCreate, FileOpen, ecc. (Che sono usati da .NET nel BCL).
Tuttavia, è possibile ignorare le regole Win32 e creare percorsi fino a 32K caratteri. Fondamentalmente è necessario utilizzare la sintassi "\\? \ C: \ MyReallyLongPath \ File.txt" che potresti non aver visto prima. L'ultima volta che ho controllato, le classi File e FileInfo in .NET ti impedivano di utilizzare questo tipo di percorso, ma puoi sicuramente farlo da C/C++. Ecco un link per maggiori informazioni.
http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx
fonte
2009-12-07 02:32:49
Va notato che un API è stato introdotto con Windows 95 che fa percorsi di supporto più lunghi di 'caratteri MAX_PATH': l'API Shell. –