BitTorrent is an open sourced P2P system written in C and Python that makes transferring large files amongst a large group of people easy and fast.
This network is set up in a way that is a little different than a normal P2P network. With this network, you really don't do any searching of files that other users have. Rather you go to websites that have lists of recently released files. These files all come as a package, and to receive them you must first get a .torrent file. Once you have downloaded the .torrent file, your BitTorrent client will kick in and connect to a managing computer that then connects you to others who have the files.
This project consists of two stages; the first is to convert the original BitTorrent client (found at ***[url removed, login to view]***) to a console-only back-end transfer engine, and the second stage is to create a Win32 front-end in MFC that will display the necessary transfer information to the end user.
* Convert the original BitTorrent client to a console only back-end transfer engine
* Create a MFC front-end
* Client must be compiled using VC++ 6.0
* Client should use only standard components
* Client must handle several downloads simultaneously
* Client must allow several downloads on a single port
* Download all files directly to a predefined directory that will be stored in the registry
**Information to be displayed (in the MFC front-end):**
* Name of file(s) being downloaded
* Download rate (speed in KB/s)
* Upload rate (speed KB/s)
* Number of seeds
* Percent done (%)
* Estimated time left (Minutes and Seconds MM:SS)
* Uploaded Kb
* Downloaded Kb
**_All information must be displayed in a standard treeview control!_**
* Bidder must research this assignment before making any bids!
* Proven knowledge in Python, C, C++ and MFC ??" A MUST!
* A cool attitude ??" a great plus ;-)
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).