I tested your Backup & Restore software.
Thank you very much.

I learned GetFolder(), PutFile(), GetCurrentFolder() functions from you.
I didn't know it

IMHO, this software has 2 problems.
1. When compressing it stores full path of files, which sometimes give problem, eg., restoring into another drive.
2. Progressbar for uncompress doesn't work properly.
UncompressFiles ( cZipFile, {|cFile,nPos| main.pbRestore.value := nPos ,;
main.StatusBar.Item(1) := cFile }, .T. )
In above function nPos doesn't return the percentage completed. (Please test with fewer number of large dbf files)
Regarding using low level C staff, I am fully agree with you. If I knew those functions, I didn't use C functions

With best regards.
Sudip