I have been working on some hobby project sites of mine. One of them is a site where you can convert eBooks from one format to another. In my opinion eBooks are a great invention and now that there are a lot of affordable readers coming on the market, this technology will get a lot of new users.
On the site you can upload your eBook and convert it to a whole range of different formats, such as .epub, .lit, .mobi and .txt.
I didn't build the conversion algorithms myself, but am using the free and open source project Calibre for it.
Give it a try if you have some eBooks you want to use on another device and don't want to install a tool for it. The site is pretty basic for now, but I'm planning to build some functions in it to customize the conversion process.
www.convertmyebook.com
To run calibre from an asp.net application I used System.Diagnostics.Process. An example of how you can use it:
Configuration.CalibrePath point to : C:\Program Files\Calibre2\ebook-convert.exe
public static void ConvertBook(string inputFile, string outputFile)
{
string calibrePath = "\""+ Configuration.CalibrePath + "\"";
string argsPath = "\"" + inputFile + "\" " + "\"" + outputFile + "\"";
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo(calibrePath,
argsPath);
startInfo.UseShellExecute = false;
process.StartInfo = startInfo;
process.EnableRaisingEvents = true;
process.ErrorDataReceived += new DataReceivedEventHandler(process_ErrorDataReceived);
process.OutputDataReceived += new DataReceivedEventHandler(process_OutputDataReceived);
process.Start();
process.WaitForExit();
}