Hi,
I have already made such backup system in Delphi, I could rewrite it using c/c++ if you need sources codes.
It runs as a windows service in the backgroud,
it can automatically logout a user to backup opened files,
The data is sent over a custom port, (but it can be easily switched to ftp )
has a list of directories to backup.
Can be set to send emails on failure/success.
backups can be configured by the user or admin. It has the option to reprogram a backup if it failed.
Hope to here from you soon.
Thank you.