public static bool Associated(string KeyName = "ByteFlood", string Description = "TORRENT File", string Extension = ".torrent") { RegistryKey BaseKey; RegistryKey OpenMethod; RegistryKey Shell; BaseKey = Registry.CurrentUser.OpenSubKey("Software", true).OpenSubKey("Classes", true); if (!BaseKey.GetSubKeyNames().Contains(Extension)) { return(false); } BaseKey = BaseKey.OpenSubKey(Extension); OpenMethod = Registry.CurrentUser.OpenSubKey("Software", true).OpenSubKey("Classes", true); if (!OpenMethod.GetSubKeyNames().Contains(KeyName)) { return(false); } OpenMethod = OpenMethod.OpenSubKey(KeyName); Shell = OpenMethod.OpenSubKey("Shell"); if (!Shell.GetSubKeyNames().Contains("open")) { return(false); } BaseKey.Close(); OpenMethod.Close(); Shell.Close(); return(true); }