What is the TC's method to get the <LNK> flag instantly?

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: white, Hacker, petermad, Stefan2

Post Reply
User avatar
byblo
Senior Member
Senior Member
Posts: 270
Joined: 2005-02-20, 21:13 UTC
Contact:

What is the TC's method to get the <LNK> flag instantly?

Post by *byblo »

I am using a lot of symbolic link for folders and files.
They are very useful but also can be very dangerous if you do not identify them clearly.
This is why I am using a different color to identify them at first sight.

To do this, usually, using some wdx entries works fine, like for instance:
[=tc.file type]
or even [=nl_info.Reparse Point Type (Ext)]
or even [=ntlinks.Obj_Type]

That method works perfectly, excepted that to get the information, it has some delay. An acceptable delay on local hdd, but a catastrophy from a far NAS

I noticed that TC itself can get the flag: <LNK> to show in the Size column instantly, even on far NAS, without any delay, and this, for both folders and files(files since 9.5)

Currently, for files i got a workaround, checking the filesize first to be equal to 0, before checking the type.
But for folders, since they are all reported as 0 size, im forced to filter per path, which is very annoying and not great since paths can change by user during time.

So my question is: How is the TC's method to get the LNK status so fast, without any delay when the wdx entries are so slow?
---------------------------

Is it possible to get that status reported directly from TC, or even write some wdx with such fast method? I do not need to get returned the link type, if symbolic, or junction or whatever, just something that allow me to distinguish linked folder to normal folder, like TC does in the Size column.
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Re: What is the TC's method to get the <LNK> flag instantly?

Post by *MVV »

I think tc.file type and <LNK> get info using the same way - via file flags, but for <LNK> TC uses information from internal file list used to populate panel while content field asks info for every file separately, so more search operations required.

It is of course possible to create a WDX plugin that works faster, e.g. it can cache information in a database, or detect folder changes and load information for all folder items in advance and keep cache in memory, but there is no way to get this information from TC.
Post Reply