I very much doubt that it's possible to implement such functionality in user-level programs. AFAIK all such programs (Unlocker, LockHunter) use a Kernel-level driver that does all the work which requires a higher level access. LockHunter also uses a Windows service, probably to manage communication between the driver and its user-level program.
However, what is possible to implement in TC is that it asks the user for confirmation whether or not the files should be copied if the move operation within the same volume fails. That way, the user can abort the operation - to avoid unnecessary disk thrashing - or copy the file(s) anyway if necessary.
Regards
Dalai
`Move` (F6) within the same volume should always be completed instantly
Moderators: Hacker, petermad, Stefan2, white
Re: `Move` (F6) within the same volume should always be completed instantly
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Re: `Move` (F6) within the same volume should always be completed instantly
Recursive moving was always a pain in TC, and a bunch of reasons there were seen that cause it instead of an instant moving. Mostly locked files perhaps, but this one is really a showstopper and can't be avoided (though TC could ask before). Today I moved a folder with a bunch of GIT repositories and TC couldn't perform instant moving because of........ ignore list! All contents except ignored .git subfolders was moved and TC gave me a bunch of messages that it couldn't remove a directory. The rest was completely moved (slow-moved, and it was noticeable because .git folders contain thousands of files) after disabling ignore list.
Please, please, please, finally make TC moving instantly first or ask a user action if slow moving is required (e.g. an elevation may be needed), it is really annoying that one expects an instant operation but gets a slow action that touches thousand of objects...
As I know, instant moving requires a single API function call, and its failure means that that it can't be done, it may be because of a locked file/folder (one could try to check for locked items and release it and then try again, recursive moving will not avoid this problem), a permission error (instant moving via TCMADMIN may help; in this case recursive moving will fail too so it is much better to ask user anyway), or in case when target location is within another volume (this is the only case when there is nothing to do but recursive copy-deleting, but TC can still inform and ask user before).
Of course, such confirmations should be configurable, and you can make them disabled by default (or maybe enabled by default to introduce the new feature to users and let them disable these confirmations)...
Please, please, please, finally make TC moving instantly first or ask a user action if slow moving is required (e.g. an elevation may be needed), it is really annoying that one expects an instant operation but gets a slow action that touches thousand of objects...
As I know, instant moving requires a single API function call, and its failure means that that it can't be done, it may be because of a locked file/folder (one could try to check for locked items and release it and then try again, recursive moving will not avoid this problem), a permission error (instant moving via TCMADMIN may help; in this case recursive moving will fail too so it is much better to ask user anyway), or in case when target location is within another volume (this is the only case when there is nothing to do but recursive copy-deleting, but TC can still inform and ask user before).
Of course, such confirmations should be configurable, and you can make them disabled by default (or maybe enabled by default to introduce the new feature to users and let them disable these confirmations)...
- ghisler(Author)
- Site Admin
- Posts: 50386
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Re: `Move` (F6) within the same volume should always be completed instantly
TC always tries instant move first. But the file/folder may be locked and can't be moved for that reason.
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com