For the past few weeks I’ve been working on support for the Front Panel Display that my custom build Media Center has. For about a year it was dark (not doing anything). But a few weeks ago, I got hold of some code from Ian Kennedy to talk to the display using C# and managed code. I also got hold of some sample code on how to write a Media Center Sink using managed code (you need to expose the class library as a COM object). All of this is documented in the Media Center 2004 SDK but all the code and related samples are in C++ (not something I care to know anything about, ever).
For me this was a great programming exercise. I wrote an Interface (allowing others to write plugins for their particular Front Panel Display), code to handle dynamic loading of assemblies, a state machine for aggregating Media Center State, Installer code for doing the COM registration using (non trivial for me), an MSI for doing all the right magic, and of course figuring out how to expose a C# class library as a COM object.
Would people be interested in having a look at this stuff? Is there anyone out there that is running Media Center and wants to write their own custom Front Panel Display? If so I might figure out a way to release this code.
Here is the result of the work I did. You can see that we are in a My Music session, playing Train Wreck from the latest Sarah McLachlan CD.