Finally it happened. Windows Media Center guide is missing data. We had some close calls previously but Microsoft was able to fix it somehow. As it stands right now, Windows Media Center without guide data becomes unusable. Hopefully, this will be resolved soon. I tried to download Guide data manually. That option is available in Settings. Unfortunately, everything remains the same.
I know there is a third party tool that will import listings from another source. It is available at Windows Media Center forum. However, entire setup process is rather difficult, and requires disabling some features. Therefore, I was not eager to use it in my home setup yet. I may have to revisit the topic, and get more familiar with a process.
This guide issues and creation of this EPG tool, made me wonder how to access Windows Media Center database. It is located in Program Data eHome folder. I did some tests couple months ago and I was able to find out that database has extension “.db” which would indicate that it is a SQLite database. However, when I tried to open it with SQLiteSpy, I was greeted with an error message. It is definitely protected and it cannot be opened in this way. At this point it is hard to determine what database it is and what tool was used to create it.
Many years ago, I was looking into development of some kind of plugin for Windows Media Center. I was able to find some Windows Media Center SDK. I read through documentation, but it was way too complicated for me at that time. I remember there was a talk of some manifest and GUID. I know for the fact that every plugin created for Windows Media Center needs to be registered. Similar approach is used by Plex Media Server.
Yesterday, I stumbled on something interesting. I was browsing for information how to access Windows Media Center database and I found information that Microsoft created a tool for importing guide data from a third party providers. This tool is located inside Windows eHome folder along with whole bunch of dll files. Microsoft provides documentation how to use that tool along with sample XML file that can be loaded into guide. There are some elements of the xml structure that are kind of confusing, however overall all we need is a formatted tv listing . We should be able map it and load it into our HTPC. I do not believe any additional steps will be required.
I have to admit that Microsoft is not very secretive about Media Center API. They did not create closed system. Opposite is true. There is SDK and documentation for Media Center namespace.
Ceton has created a tool that interacts with recording engine. My initial thought was that they worked with Media Center database. They can access guide, schedule recording etc. I believe they leverage the Media Center namespace and exposed methods
Out of curiosity I loaded one of the dll files from eHome folder into a new project references in Visual Studio. Then I selected “browse the object” and to my surprise I could see all the methods and properties available in Media Center namespace. I created a new object for Lineup and called a method. It almost worked. There was an error message notifying me about registering with application manifest. This looks very promising. I may have to read through SDK documentation again.