CodeSnip: Getting Currently Playing info from Windows Media Player using the blogging power toy.
I don’t know whom this would benefit but someone building a blog posting tool for the desktop, but anyway here’s the code that I converted from the jscript example that comes with the Windows Media Player blogging powertoy :
using System;
using Microsoft.Win32;
public class MediaPlayerInfo
	{
		public static string GetCurrentlyPlayingMedia(){
			RegistryKey regKey = Registry.CurrentUser;
			regKey = regKey.OpenSubKey("Software\\Microsoft\\MediaPlayer\\CurrentMetadata");
			string displayString = "<div class='media'>[ Currently Listening to: ";
			bool hasMetadata = false;
			string trackInfo = "";
			try{
				trackInfo = regKey.GetValue("Title").ToString();
				if(trackInfo.Length != 0){
					hasMetadata = true;
					displayString += trackInfo + " ";
				}
			}catch{
				try{
					trackInfo = "";
					trackInfo = regKey.GetValue("Name").ToString();
					if(trackInfo.Length != 0){
						hasMetadata = true;
						displayString += trackInfo + " ";
					}
				}catch{}
			}
			try{
				trackInfo = "";
				trackInfo = regKey.GetValue("DurationString").ToString();
				if(trackInfo.Length != 0){
					hasMetadata = true;
					displayString += "(" + trackInfo + ")";
				}
			}catch{}
			try{
				trackInfo = "";
				trackInfo = regKey.GetValue("Author").ToString();
				if(trackInfo.Length != 0){
					hasMetadata = true;
					displayString += " by " + trackInfo;
				}
			}catch {}
			try{
				trackInfo = "";
				trackInfo = regKey.GetValue("Album").ToString();
				if(trackInfo.Length != 0){
					hasMetadata = true;
					displayString += " on the album " + trackInfo;
				}
			}catch{}
			if(!hasMetadata){
				displayString += "Nothing.";
			}
			displayString += " ]</div>";
			return displayString;
		}
	}
It could probably stand to be a bit more flexible - ie user-defined by a template like w.bloggar, but for the basics it works great! Oh yeah, and let’s not forget the output:
[ Currently Listening to: Rage Against The Machine - Pocket 
Full of Shells (03:52) ]
  