Code applications in Visual Studio to access your iPod's database using .NET.
When you install the iPod software for Windows, a file called ipodservice.exe is installed. This runs constantly in the background, checking to see if an iPod has been plugged in. If it has, the .exe launches iTunes, ready to update all your music. Needless to say, if you don't have this .exe running, these useful features will not work.
However, this file is interesting for another reason. Through the wonders of Microsoft's Component Object Model (COM), a fairly substantial application programming interface (API) is exposed for performing numerous operations on the iPod.
As this is presumably the Apple-sanctioned way of accessing the iPod, rather than accessing it simply as a FireWire drive, taking a peek at the API exposed by ipodservice.exe should be easy—and it is!
Using the Object Browser in Visual Studio to investigate the API further, it turns out you can do almost anything you want with your iPod, ranging from simple tasks such as these:
Mounting and unmounting the iPod
Getting the Windows drive letter
Getting the iPod's name (for example, "Owen's iPod") to advanced features such as these:
Formatting the iPod's hard disk
Writing to individual sectors on the hard disk
Writing files to the hard disk
Although theoretically, you ...