You are here

When absolute path length is greater than 260 characters, PortableApps Platform can not open app

2 posts / 0 new
Last post
Mark888
Offline
Last seen: 7 months 4 weeks ago
Joined: 2022-09-28 11:21
When absolute path length is greater than 260 characters, PortableApps Platform can not open app

As suggested, I shall open a new thread to track this issue.

I have multiple apps/utilities that were categorized into folders, under PoratableApps.com folder I just put directory symlinks to the real directories.

Because the real directories were categorized into folders, sometimes its paths were a bit long. I managed it somehow.

However, whenever the absolute path length is greater than 260 characters, the app can not be opened from the PortableApps.com Platform.

As @John said in the above link, quote: "Most apps won't work with paths that long" I have a second thought on that. As Windows started to support long path more than a decade ago, more and more apps support long path if the developers aware of it. Eventually, I think this will become standard or at least more common, just as when we moving from 32bit to 64bit.

Useful links:

Microsoft: Maximum Path Length Limitation

Stackoverflow

Long Paths in .NET - Part1

Long Paths in .NET - Part2

Long Paths in .NET - Part3

John T. Haller
John T. Haller's picture
Online
Last seen: 40 min 9 sec ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Little Support

Most apps don't support long paths and I'd wager most devs aren't interested in adding support for it. Apps are installed to Windows to C:\Program Files, so there's no need for the apps themselves to support long paths for working with their own internal files. Application data is typically stored to C:\Users\UserName\AppData\Roaming\AppName, so there's not much call for supporting long paths there either. Same with default data since that'll be in C:\ProgramData\AppName. The only reason to support it would be user files when users create extended directory nesting on their own as you have.

NSIS (PA.c Launchers and PA.c Installer) and Delphi (PA.c Platform) don't support long paths by default. You can work around it with the \\?\ prefix for setting paths. Delphi can with some workarounds and settings but some built in commands won't work (not sure what offhand as documentation is sparse). NSIS can handle having ManifestLongPathAware to set the manifest, but some commands we use won't work (CopyFiles, CreateShortcut, etc) so we'd need to figure out everything that doesn't work and come up with alternate custom code. In short, it'd be a decent amount of work for me to do.

The only apps in our nearly 500 app set that have LongPathAware set in the manifest are: 7-Zip, AIMP, calibre, FastCopy, HijackThis, Lucas Chess, Paint.net, PDF-XChange Editor, PeaZip, Picard, PrivaZer, qBittorrent, RedNotebook, Rufus, TreeSizeFree, and, somewhat ironically, WinFile.

Overall, at this point in time, it would be too much work for very little reward for the small number of apps that support long file paths for the niche set of users with this issue.

Sometimes, the impossible can become possible, if you're awesome!

Log in or register to post comments