This bid is for a simple C++ ActiveX control written in C++/ATL that manages a list of files to be uploaded to a web server. The web server will have a simple PHP script that receives each file and returns a confirmation text or an error message.
The control should display a list using GDI function (simple drawtext) and a progress bar for each file. The control must calculate the space for the text and progress bar depending on the size and shape of the contorl.
The control will have a simple function to add files:
bool IFileUploadControl::AddFile(LPCTSTR szLocalFile, LPCTSTR szRemoteURL, DWORD dwID)
and will fire an event when the file is finished or a different event upon failure passing the ID value back with the event.
The control should be able to handle lack of internet connection and resume when it becomes available using the HasInternetConnection API. New files may be added to the queue at any time so the control should be thread safe.
A property should specify the max number of concurrent uploads. That is how many files from the queue can upload at one time.
## 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
Win32 VC 6.0 or 2005 w/ ATL Static link