Esempio n. 1
0
        public static string GetMimeTypeFromWindowsRegistry(string filename)
        {
            System.Security.Permissions.RegistryPermission regPerm = new System.Security.Permissions.RegistryPermission(System.Security.Permissions.RegistryPermissionAccess.Read, "\\HKEY_CLASSES_ROOT");
            Microsoft.Win32.RegistryKey classesRoot = Microsoft.Win32.Registry.ClassesRoot;
            FileInfo fi        = new FileInfo(filename);
            string   extension = fi.Extension.ToUpper();

            Microsoft.Win32.RegistryKey typeKey = classesRoot.OpenSubKey(@"MIME\Database\Content Type");

            foreach (string keyname in typeKey.GetSubKeyNames())
            {
                Microsoft.Win32.RegistryKey currentKey = classesRoot.OpenSubKey(@"MIME\Database\Content Type\" + keyname);
                string currentExtension = (string)currentKey.GetValue("Extension", null);
                if (!string.IsNullOrEmpty(currentExtension) && currentExtension.ToUpper() == extension)
                {
                    return(keyname);
                }
            }
            return(string.Empty);
        }
Esempio n. 2
0
 public string GetCurrentValue()
 {
     // @ Review : Should this move in SystemInformation ?
     if (ieVersion == string.Empty)
     {
         System.Security.Permissions.RegistryPermission registryPermission = null;
         registryPermission = new System.Security.Permissions.RegistryPermission(System.Security.Permissions.RegistryPermissionAccess.Read, "Version");
         try
         {
             registryPermission.Assert();
             using (Microsoft.Win32.RegistryKey rk = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("Software\\Microsoft\\Internet Explorer"))
             {
                 string fullversion = (string)rk.GetValue("Version");
                 ieVersion = System.Text.RegularExpressions.Regex.Replace(fullversion, @"(^[^\.]+\.[^\.]+)\..+?$", "$1");
             }
         }
         finally
         {
             System.Security.Permissions.RegistryPermission.RevertAssert();
         }
     }
     return(ieVersion);
 }