Create a program for recovering deleted files (Undelete).
The program should first scan a selected drive for all deleted files, then provide a choice to recover selected files.
The program should perform as well as any other existing Undelete utilities. For example if any other program is able to recover a file then your program should also be able to do this.
The GUI can be very simple, as we will change the GUI later.
The program must work under Windows XP and Vista, and it must recover files from all common file systems including Fat and NTFS.
It should be written in C++, but .NET (C#) may also be accepted.
The program should be well documented.
We should receive exclusive and complete ownership of the source code, unless we agree to use 3rd party libraries, etc.