Renamed a file, & in doing so, it lost its' Length

Discussion related to "Everything" 1.5.
Post Reply
therube
Posts: 5723
Joined: Thu Sep 03, 2009 6:48 pm

Renamed a file, & in doing so, it lost its' Length

Post by therube »

Everything 1400a - renamed a file

renamed a file, & on doing so, it lost its' Length ?

source Len 191
rename Len 247

&... rename back (Ctrl+Z) & the Length then re-appears ?

(Win7, .wmv, /Windows/ Properties /does/ still see Length)



it must have to do with LFN, at least with .wmv (.mkv, .mp4 seem unaffected), (& maybe Win7 plays in, too ?)


how ever Windows goes about gathering Properties (length:) of a file, seems it fails on LFN (.wmv)

(might be different on later OS ?, maybe with LFN support enabled ?)

in Win7, virtually the only way to interact with LFN is via Everything, as in from Window Explorer
you cannot do anything with LFN. Everything (thankfully) translates LFN to SFN, allowing, from
within Everything, Windows [& SFN] access to the otherwise LFN.


with .wmv, LFN, seems Windows (hence, Windows Explorer) cannot gather Properties,
so Everything also does not see Length

with .mkv .mp4, the same (Windows [lack of] direct access to the LFN file) holds true,
yet, Everything is able to see Length Property ?

from within Everything, on a LFN, Alt+Enter (Windows Properties, Details)
is "sent" a SFN (so Windows opens a SFN), & Windows (Properties) is thereby
able to see Length of .wmv & .mkv & .mp4

yet, when Everything gathers that data from .wmv, it looses Length ?

(seems .avi, .flv .mov, are also unaffected,
but .asf, .mpg are)


(unpack BigBuckBunny.7z into a path of a length long enough to create LFN's, so a path of 18 chars suffices)


path:len:>260 ext:asf;wmv;mpg
- note, that /some/ "LFN" /will/ show, so there is something else also in play
.
bunny.txt
(1.93 KiB) Downloaded 79 times
.
BigBuckBunny.7z
(1.6 MiB) Downloaded 43 times
void
Developer
Posts: 19870
Joined: Fri Oct 16, 2009 11:31 pm

Re: Renamed a file, & in doing so, it lost its' Length

Post by void »

I'm seeing the correct lengths for all files with VLFN paths on Windows 7.

Please try enabling shell_max_path:
  • In Everything 1.5, from the Tools menu, click Options.
  • Click the Advanced tab on the left.
  • To the right of Show settings containing, search for:
    shell
  • Select: shell_max_path
  • Set the value to: false
  • Click OK.
Recent versions of Everything enable this setting by default as there's too many shell extensions which don't handle long paths and crash.

When shell_max_path is enabled, Everything will not gather properties on files with a path longer than 259 characters.


(might be different on later OS ?, maybe with LFN support enabled ?)
Everything gathers properties from the Windows Shell.
The Windows Shell is still limited to 259 characters, even on Windows 11.
therube
Posts: 5723
Joined: Thu Sep 03, 2009 6:48 pm

Re: Renamed a file, & in doing so, it lost its' Length

Post by therube »

shell_max_path ... Recent versions of Everything disable this setting by default
(Default) appears to be, true (enabled)?
When shell_max_path is enabled, Everything will not gather properties on files with a path longer than 259 characters.
Appears to contradict what I am seeing - for; avi flv mkv mov (with Path+Name lengths > 259).
(I'm getting the results regardless of the shell_max_path setting.)

.
Everything - wmv Property Length disappear on LFN.png
Everything - wmv Property Length disappear on LFN.png (26.99 KiB) Viewed 1589 times


Here I copied the file & appended "xxx" 's to create a 255 char name-part.
And it lost its Length:
.
Everything - wmv Property Length disappear on LFN2.png
Everything - wmv Property Length disappear on LFN2.png (6.95 KiB) Viewed 1587 times
void
Developer
Posts: 19870
Joined: Fri Oct 16, 2009 11:31 pm

Re: Renamed a file, & in doing so, it lost its' Length

Post by void »

shell_max_path ... Recent versions of Everything disable this setting by default
(Default) appears to be, true (enabled)?
Sorry, I meant :
Recent versions of Everything enable this setting by default. (shell_max_path=true by default)



After digging into this a little more..

Windows automatically uses the short path part, but never a short name.
That is why you see lengths for asf files with a relatively short name in a long path. (full path can be more than 259 characters)
Everything will currently fail to gather properties for asf files where the short path + long name exceeds 259 characters.

avi flv mkv mov extensions are falling back to the Everything property handler which doesn't have any issues with VLFNs.



The next alpha update will allow short paths + short names when gathering properties.
-The context menu already supports short paths + short names, that is why you see a valid length in the properties.
Post Reply