Require a desktop app to zip and upload recently modified files to my web server. Server IP and FTP login details will be stored in an ini file. On startup, display a list of all drives / files / folders (tree) for the PC with tick boxes for selecting folders / files. If a complete folder is selected, show a green folder icon. If a file is selected, show a yellow folder ( indicating partial contents selected ). Any selection of a folder must auto select all content files and folders. Save the selection to a txt / ini file and reload selection next time the app starts. Keep a record of the files already zipped and uploaded and only process selected files that have changed since the last update. Must have a command line option to initiate the backup and upload process. A text file must also be created and uploaded with a list of the files included in each zip file ( including the path, file name, size, date and time ). Each zip file size must be limited to a maximum size ( in Mb, set in the ini file ), unless a single file exceeds that limit size, then a larger zip file will be allowed. Therefor, a backup process may create a number of zip files at the same time. Zip files should be deleted after the upload is completed and local / remote files sizes have been checked. I prefer a Java or vb6 application, but open to suggestions. Definately not .net. App must not require the installation of any other framework except that which was present on an original Windows XP sp2 standard installation plus latest Java.
## Deliverables
1) All deliverables will be considered "work made for hire" under U.S. Copyright law. Employer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the employer on the site per the worker's Worker Legal Agreement).
2) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
3) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Employer's environment--Deliverables must be installed by the Worker in ready-to-run condition in the Employer's environment.
b) For all others including desktop software or software the employer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this project.
## Platform
Windows XP and Windows 7