Option: Flush write buffer before verify
When I copy files and check "verify" then Teracopy starts verification immediately after the copy operation has finished. This presents a problem in cases when I copy files to a DVD disc which is in UDF format (formatted as "live file system" in Windows). The system reports those files as written while in actual fact they are still in buffer and waiting to be burnt physically - when the verification has started in that moment then there are two concurrent operations going on: verification and writing. This causes the process to slow down considerably because the DVD drive moves the laser head from one place to another alternating between writes and reads - a very slow process on optical media. Only after a while (when the writes are actually committed to disc) the verification process starts off with its normal read speed.
Apart from slowness and unpleasant sounds coming from the drive I fear that this might also affect negatively write quality since the write process is being constantly interrupted by reads - I'm not sure about it but I think it would certainly be better if writes were done in one continuous fashion and then verification in the same way.
So my suggestion is to add an option to Teracopy to flush the write buffer before starting verification. I even think it would be a good idea to implement it for all types of media including internal disks - it makes sense to verify only after all data have been saved to disk physically - but if it's optional then I'd be happy also.
I've found a program that can flush write buffers called flush - it works for optical media when used with the -force option - when I run it immediately after the copy has finished and manually start verification just after the buffer is flushed then this seems to get the job done (the Sync program by Sysinternals apparently can't flush optical disc buffers). It would be great if Teracopy could so the same thing automatically and in unattended mode.
Please disable Use system write cache option and try again. I'll check the flush app.