In Windows, filenames and paths are historically limited to MAX_PATH which is defined as 260 characters. Windows API calls are therefore also limited to this number of characters. However, there is a way to bypass this limitation by using a special naming convention and to allow a maximum path length of 32767 characters.
Attribute Changer is using the standard Unicode API calls and therefore limited to 260 characters for a complete path and I got feedback from customers that they were not able to modify files with path lengths going beyond these 260 characters.
To resolve this problem, I changed the application to prefix the local file operations with “\\?\” and network operations with “\\?\UNC\”. By adding a prefix, Windows is able to return an extended path length of up to 32767 characters when using Unicode API calls.
More information can be found at Maximum Path Length Limitation
Attribute Changer is now able to process very long file paths with success.
If you find this program useful, please consider making a donation. Many thanks for your contribution!