Guido van Rossum <gu...@python.org> writes:

> Actually, I've heard of code that dynamically falls back on short
> names when paths using long names exceed the system limit for path
> length (either 256 or 1024 IIRC). But short names pretty much require
> consulting the filesystem, so we can probably ignore them.

The limit is 260 characters. But longer paths can be handled by
prepending \\?\ and using the unicode APIs.

see http://msdn.microsoft.com/en-us/library/aa365247.aspx#maxpath

we have the following code to handle the above insanity:
,----
| def prepend_magic_win32(path):
|     assert isinstance(path, unicode), "path must be of type unicode"
| 
|     if path.startswith(u"\\\\"):
|         if path.startswith(u"\\\\?\\"):
|             return path
|         else:
|             return u"\\\\?\\UNC\\" + path[2:]
|     else:
|         return u"\\\\?\\" + path
`----

-- 
Cheers
Ralf
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to