Following a link sub-folder sizes are not derived from Everything

The behaviour described in the bug report is either by design, or would be far too complex/time-consuming to be changed

Moderators: white, Hacker, petermad, Stefan2

User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: Following a link sub-folder sizes are not derived from Everything

Post by *ghisler(Author) »

This is expected behavior. Total Commander just asks Everything about the current path, it doesn't try to follow links by itself. What you can do is open the Everything settings and go to the Database -> Folders page and add the junction itself as a "Folder".
For example, if the jucntion is named
c:\Subdir\Junction
and points to
c:\SomeOtherDir
then you need to add c:\Subdir\Junction to Everything 1.4.1 to make it index it.
Author of Total Commander
https://www.ghisler.com
User avatar
Horst.Epp
Power Member
Power Member
Posts: 6497
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Re: Following a link sub-folder sizes are not derived from Everything

Post by *Horst.Epp »

I'm wondering why it works for all that junctions inside c:\users\username.
Without any special setting, TC shows the dir sizes if I double-click on any of these links.
Windows 11 Home x64 Version 23H2 (OS Build 22631.3527)
TC 11.03 x64 / x86
Everything 1.5.0.1373a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.73
QAP 11.6.3.2 x64
User avatar
Horst.Epp
Power Member
Power Member
Posts: 6497
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Re: Following a link sub-folder sizes are not derived from Everything

Post by *Horst.Epp »

I found the difference and the solution :D
The junction must have a Deny Read and Execute for the group Everyone.
Now it also works with my 64 junction in the Total7zip plugin.
TC shows the dir size as usual.
Windows 11 Home x64 Version 23H2 (OS Build 22631.3527)
TC 11.03 x64 / x86
Everything 1.5.0.1373a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.73
QAP 11.6.3.2 x64
User avatar
petermad
Power Member
Power Member
Posts: 14808
Joined: 2003-02-05, 20:24 UTC
Location: Denmark
Contact:

Re: Following a link sub-folder sizes are not derived from Everything

Post by *petermad »

2Horst.Epp
The junction must have a Deny Read and Execute for the group Everyone.
Can you set that when you make the junction, or do you do it via the context menu?
License #524 (1994)
Danish Total Commander Translator
TC 11.03 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1371a
TC 3.50 on Android 6 & 13
Try: TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
User avatar
Horst.Epp
Power Member
Power Member
Posts: 6497
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Re: Following a link sub-folder sizes are not derived from Everything

Post by *Horst.Epp »

petermad wrote: 2023-09-03, 11:27 UTC 2Horst.Epp
The junction must have a Deny Read and Execute for the group Everyone.
Can you set that when you make the junction, or do you do it via the context menu?
With one of your em_commands :)

Code: Select all

[em_ext_junction]
cmd=%COMSPEC% /K
param=if exist %P%N\* (mklink /J %T%N %P%N) else (echo The cursor must be on a FOLDER)
path=%SYSTEMDRIVE%\
menu=Make Junction in Opposite Panel to FOLDER Under Cursor (Not on Network)
button=%COMMANDER_EXE%,12
Windows 11 Home x64 Version 23H2 (OS Build 22631.3527)
TC 11.03 x64 / x86
Everything 1.5.0.1373a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.73
QAP 11.6.3.2 x64
User avatar
petermad
Power Member
Power Member
Posts: 14808
Joined: 2003-02-05, 20:24 UTC
Location: Denmark
Contact:

Re: Following a link sub-folder sizes are not derived from Everything

Post by *petermad »

2Horst.Epp

I meant, how do you set "Deny Read and Execute for the group Everyone" - I tried it via the Context menu's Security tab, and it worked. But I was wondering whether it could be set when the Junction is created...?
License #524 (1994)
Danish Total Commander Translator
TC 11.03 32+64bit on Win XP 32bit & Win 7, 8.1 & 10 (22H2) 64bit, 'Everything' 1.5.0.1371a
TC 3.50 on Android 6 & 13
Try: TC Extended Menus | TC Languagebar | TC Dark Help | PHSM-Calendar
User avatar
Horst.Epp
Power Member
Power Member
Posts: 6497
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Re: Following a link sub-folder sizes are not derived from Everything

Post by *Horst.Epp »

petermad wrote: 2023-09-03, 14:14 UTC 2Horst.Epp

I meant, how do you set "Deny Read and Execute for the group Everyone" - I tried it via the Context menu's Security tab, and it worked. But I was wondering whether it could be set when the Junction is created...?
The only idea I have is using Cacls or ICacls to change the security after the Junction is created.
Windows 11 Home x64 Version 23H2 (OS Build 22631.3527)
TC 11.03 x64 / x86
Everything 1.5.0.1373a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.73
QAP 11.6.3.2 x64
User avatar
tuska
Power Member
Power Member
Posts: 3760
Joined: 2007-05-21, 12:17 UTC

Re: Following a link sub-folder sizes are not derived from Everything

Post by *tuska »

2ghisler(Author)
tuska wrote: 2023-09-01, 15:36 UTC This gives me these results in Everything 1.4.1.1024 (x64) and Everything 1.5.0.1355a (x64) || ✅ Everything Service ticked(!):
  • GetDirSize=3 does NOT work for me with Junctions (<LNK> or <LINK>); Automatic, only with 'Everything'
ghisler(Author) wrote: 2023-09-03, 07:24 UTC This is expected behavior.
Total Commander just asks Everything about the current path, it doesn't try to follow links by itself.
What you can do is open the Everything settings and go to the Database -> Folders page and add the junction itself as a "Folder".
Thanks for the hint!

Now both the folder size display with the setting "Automatic, only with 'Everything'" works
as well as the search query in TC including Everything (without or with TC parameters ed:, ev:).

In such a case, the number of folders and files in the status bar of Everything may increase,
if the folder for which a junction was created was already indexed NTFS anyway.
User avatar
Horst.Epp
Power Member
Power Member
Posts: 6497
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Re: Following a link sub-folder sizes are not derived from Everything

Post by *Horst.Epp »

2tuska
The Author of Everything suggests not to add junctions as folders.
For all the default Windows junctions there is no need as they work out of the box.
For own created junctions my setting from above works flawless.
Files from junctions on the same volume are already in the index.
Files from junctions to other volumes are part of the index of this volumes
or they are indexed as folders.
Windows 11 Home x64 Version 23H2 (OS Build 22631.3527)
TC 11.03 x64 / x86
Everything 1.5.0.1373a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.73
QAP 11.6.3.2 x64
User avatar
tuska
Power Member
Power Member
Posts: 3760
Joined: 2007-05-21, 12:17 UTC

Re: Following a link sub-folder sizes are not derived from Everything

Post by *tuska »

Horst.Epp wrote: 2023-09-04, 07:07 UTC 2tuska
The Author of Everything suggests not to add junctions as folders.
For all the default Windows junctions there is no need as they work out of the box.
For own created junctions my setting from above works flawless.
Files from junctions on the same volume are already in the index.
Files from junctions to other volumes are part of the index of this volumes
or they are indexed as folders.
Yes, I agree with all the points.

I myself generally exclude junctions in the Everything settings to avoid double entries in the search results.
See also point 9. in this image (example of junctions for multiple synchronisations).

I was only interested in Junctions in connection with the TC options under
Configuration > Options... > Operation > Calculate space occupied by subdirectories > 'Everything'.
to test it out. (My default setting is "Manual: Alt+Shift+Enter").

Results
Junctions - Display of folder sizes in TC with integration of Everything
TC: Configuration > Options... > Operation > Calculate space occupied by subdirectories > ✅ 'Everything'
  1. Only with the TC option "Automatic, only with 'Everything'" is it necessary to set up a FOLDER INDEXING in Everything.
  2. With the other two TC options, namely "Automatic, local drives only" and "Automatic, also on network",
    the folder sizes for a junction were displayed.
Junctions - Search in TC with integration of Everything
TC: Search in separate process... Alt+Shift+F7 > ✅ 'Everything'
TC: Configuration > Options... > Operation > Calculate space occupied by subdirectories > ✅ 'Everything'
  1. With NONE of these options, namely "Automatic, local drives only", "Automatic, also on network",
    "Automatic, only with 'Everything'", you get a search result in TC.
  2. A search result in TC is only obtained WITHOUT using Everything in TC, i.e. 🔲 'Everything' MUST be unchecked!
    - OR -
  3. ... after setting up FOLDER INDEXING in Everything for the Junction.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: Following a link sub-folder sizes are not derived from Everything

Post by *ghisler(Author) »

I found the difference and the solution :D
The junction must have a Deny Read and Execute for the group Everyone.
If you do this, Total Commander cannot list the content of the junction, so it looks up the destination and goes there instead. You can see this by the change of the current directory field. Of course Everything can then show the directory sizes because Total Commander shows a real directory, not a junction.
Author of Total Commander
https://www.ghisler.com
User avatar
Horst.Epp
Power Member
Power Member
Posts: 6497
Joined: 2003-02-06, 17:36 UTC
Location: Germany

Re: Following a link sub-folder sizes are not derived from Everything

Post by *Horst.Epp »

ghisler(Author) wrote: 2023-09-04, 13:59 UTC
I found the difference and the solution :D
The junction must have a Deny Read and Execute for the group Everyone.
If you do this, Total Commander cannot list the content of the junction, so it looks up the destination and goes there instead. You can see this by the change of the current directory field. Of course Everything can then show the directory sizes because Total Commander shows a real directory, not a junction.
For the same reason, all the default OS junctions are working fine with Everything enabled in TC.
Now I have to make a small cmd file to make this setting after I created a new junction.
It's not urgent as I have only a few such junctions which can be changed by hand.
Windows 11 Home x64 Version 23H2 (OS Build 22631.3527)
TC 11.03 x64 / x86
Everything 1.5.0.1373a (x64), Everything Toolbar 1.3.3, Listary Pro 6.3.0.73
QAP 11.6.3.2 x64
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48088
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Re: Following a link sub-folder sizes are not derived from Everything

Post by *ghisler(Author) »

Moderator message

Moved to will not be changed
Author of Total Commander
https://www.ghisler.com
Post Reply