If there are options to change attributes after copying, then those should apply, but otherwise, not preserving attributes (except the Archive bit) I'd probably report as a bug...
As this is supposed to be a copy/move tool, IMHO, it should be compatible with Windows, and keep the original timestamps like a normal copy would. Again, I'd report it as a bug if it didn't... despite the limited value of file timestamps.-Ath
Hello Ath, thank you for telling, i would like to explain how i do:
I do copy only files content (ie: i read in a stream and write that to target, it is a 1:1 copy of original content, realized with Delphi Filestream)
I will take your bugs and squish them by implementing more Copy Methods (Winapi: CopyFile; MoveFile; SHFileOperation), would that satisfy?
Since my method use Streams to read/write, original attributes and timestamp are lost with my own method, implemented checkboxes to set them back to original what cost performance (i need to touch everything twice), so i let user define. (by default all checkboxes are set to give most compatible target)
If you wonder why i use Streams for read/write, simple answer:
1. copy progress is faster than Winapi
2. i can react on bad-sectors, Winapi would fail, my method can atleast skip bad-parts (while let user decide what to do on read errors)
to clarify:
first i try using normal stream to read/write, on read errors i switch to hardware mode wich is like:
read file direct from partition, byte by byte and skipping bad. This feature is alpha phase, fragmentation is my enemy :-)
Different but related topic:
Have you thought about the Alternate Data Streams (ADS) that can be stored on the NTFS filesystem? (Available since Windows 2000) They should be copied/moved when the destination filesystem is also NTFS, and probably/optionally give a warning or not delete the source when moving, when ADS's are found. A simple "dir /r" in a cmd prompt will show any ADS's for files that have them (try that in your Downloads folder..., NirSoft's AlternateStreamViewer can show you their content)-Ath
My only experience with ADS is to remove them. Eg: Download a .exe file with InternetExplorer, when you try to run .exe your Windows is telling that file might be unsafe because its downloaded, my ADS-Remover would fix that situation, no more "file might unsafe" warnings, more experience i havent made yet! I will investigate your linked resource and see what i can do. Thank you!
My App is not intended to be a "Cloner" yet (additional NTFS Security Attributes, Windows GUIDs, other OS-Specific Information are not handled yet!)
For now it realy just do 1:1 content copies. My App handle "1:1 content, Standard-file attributes, Datetimestamp"