As a result of this discussion I fetched the sources of both Ultra- and
SuperCopier.
I have made a very brief review of them and want to communicate my
impression.
While the basic idea of both are attractive, neither can be easily
integrated in ROS
as-is because of their dependencies, Ultra depends on Qt, and Super is
written in
Pascal and depends on Borland's VCL.
To complicate matters further both are written under the precept that
they don't
have access to the shell source code, and therefore must employ hooking
methods
to achieve the desired functionality. This is dead weight in the context
of ROS.
A much simpler implementation will suffice, and it needs to be written
in C or C++.
I have not reviewed the relevant parts of the ROS Explorer source (I
don't really know
it's structure), but as I see it we're just in need of better error
handling in Explorer.
We need a copy-error list to keep track of faulted copy/move operations.
When Explorer hits a snag, it should add the filepath and some flags to
the list,
and then commence with the rest of the files.
At the conclusion of the copy/move operations, the user should be notified,
if necessary, with the list of faulted files, and given some options on
action.
For example, the files may be added to the boot-move list in SessionManager
if they faulted because they where locked, and so on.
I would be happy to look into this myself, but unfortunately my ROS
development
environment is currently in a shambles after multiple system crashes and
loss of code :-/
If someone with insight in Explorer's source feel like I do about the
nasty behavior
of dropping an entire batch because of one little snag, then please look
into it.
Then again, as this is not a priority matter, perhaps it can wait a
while, and
I'll do it later (I guess You're as occupied as I am).
Rock on // Love
__________ Information from ESET Smart Security, version of virus signature database 4563
(20091101) __________
The message was checked by ESET Smart Security.
http://www.eset.com