Summary
Write a program that will verify a user has an authentic CD(simple file check), and if the CD passes the check, download an update file from a web url, then run the program, then when the program has stopped running, delete the program that was downloaded.
Details
End user will download this file from a website. When the user runs the program, it will look at the users CD to see if a either of two files exists on the disk. If at least one file is present, the software will download an update program from a website. The user cannot see the website and cannot know what the url is, this is all hidden from the user. They can see a download progress bar(real or fake bar progress) during the download. When the download is complete, the updater should run the downloaded program. The updater will then delete the downloaded program so the user cannot re-run it.
Program should also have an option to download a file to a specific location. Sometimes we may want to simply download an updated file and replace an existing file in a known location.
Sometimes we will want to download and run the updater then delete the downloaded file, sometimes just download a new file to a specific location. Any options like these, and the url, files to check etc should be easy to change in the header for example so we can make changes and recompile to make a new update program. Program should be generic.
I would prefer this in realbasic but would accept other languages if I can compile them locally.
Must be compiled for Windows and I would also like a MacOSX version if possible.
Updater must be runnable without installation itself. Ie, the user does not have to download, then install, then run the installer. They should download and run the program or even select 'run' from the download options so they do not have to save the file.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) 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 Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer 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 buyer on the site per the coder's Seller Legal Agreement).
## Platform
Windows, MacOSX version also desired
RealBasic preferred but will consider other languages.