in reply to Re: Path and File Name Maximum Lengths
in thread Path and File Name Maximum Lengths

MS has failed to define an upper limit for the length of an absolute filename in the past.

MAX_PATH has been around for as long I can remember.

Many API functions have some arbitary limits, typically 256 or 260 chars

First you complain there's no limits, and then you call the limits arbitrary?

Besides, the limit isn't arbitrary. 240 comes from history:

Drive (C:\) + Dir (240) + 8.3 file name (12) + NUL = 256

It has been expanded to allow a drive using the \\?\C:\ notation:

Path (\\?\C:\ + 240 + 12) + NUL = 260.

Replies are listed 'Best First'.
Re^3: Path and File Name Maximum Lengths
by afoken (Chancellor) on Jun 19, 2010 at 05:27 UTC
    First you complain there's no limits, and then you call the limits arbitrary?

    Sorry, bad wording, I should have written "MS has failed to define a single, universal upper limit for the length of an absolute filename for all API functions in the past."

    MAX_PATH has been around for as long I can remember.

    And it does not say anything about the maximum length for an absolute filename any more. Even the 32767 chars limit is no real limit, according to http://msdn.microsoft.com/en-us/library/aa365247%28VS.85%29.aspx:

    Note The maximum path of 32,767 characters is approximate, because the "\\?\" prefix may be expanded to a longer string by the system at run time, and this expansion applies to the total length.

    And another quote:

    The shell and the file system have different requirements. It is possible to create a path with the Windows API that the shell user interface might not be able to interpret properly.

    And this is the point where the various file APIs really stink.

    Alexander

    --
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)