Thanks for posting.
Unfortunately paths > 260 characters are not accessible in Windows Explorer so a shell extension won't help, however, you can use DOS copy with a UNC path to copy files from a mounted backup even if the path exceeds 260 characters. Prepend the path with \\?\ e.g,
copy \\?\X:\some\really\long\path\greater\than\260\chars\* C:\short path\
copies all files in a folder where X: is a mounted drive with a path > 260 characters to a folder 'C:\short path'.
You can also use the 'Tab' key to auto-complete the path name.
Alternatively, you can use the MS command line utility RoboCopy to copy files and recurse folders. RoboCopy ships with Windows Vista and later and also handles paths greater than 260 characters.
robocopy X:\some\really\long\path\greater\than\260\chars\ C:\short path\ /Ehttps://en.wikipedia.org/wiki/RobocopyEDIT:
The above limitation on
> 260 characters exists for Windows Explorer in XP. Later versions of Windows Explorer can display some
path names > 260 characters by shortening the path**. In this case Files can be copied to another path
, but a folder structure cannot be copied to a destination where the resultant path would be > 260 characters. RoboCopy could be used to copy the full path structure to another path if necessary.
**Windows Explorer in Vista and later (including Windows 10) will shorten the path elements (sub-folders) to the DOS short name
if the overall full path length is > 260. e.g, path 'C:\01234567890\01234567890\' becomes 'C:\012345~1\012345~1'. This 'compression' can only shorten the path if sub-folders are > 8 characters long. However, even if this results in a path length < 260 characters it does not permit copying of paths > 260 characters as DOS short names cannot be used for creating new folders.
To see path shortening in the address bar click outside the path to make it editable. The below 'Full' path is > 260 characters:Note:
The above Explorer 'trick' fails If the the following calculation is true:
Number of sub-folders in the path with a length >= 8 * 8
+ Number of sub-folder in the path with a length < 8 * length of each folder
+ Total number of sub-folders (for the '\' in the path)
+ 3 For the root e.g, ('c:\')
+ The file name length
In this case the full path cannot be displayed in any version of Windows Explorer
. because even by shortening the path the length will still be > 260 characters long.
The real problem is that Explorer isn't using the Windows Unicode File API's with UNC formatted paths. This allows paths of up to 32,767 characters.https://msdn.microsoft.com/en-gb/library/windows/desktop/aa365247%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396
With regard to creating a shell extension to copy file/folder paths. Given that many paths > 260 characters cannot be displayed in any version of Windows Explorer and we have had no other requests for this feature it is therefore not something we would consider creating at the current time.
Nick - Macrium Support