public void TestRead()
 {
     //Setup
     RegistryEdit reg = new RegistryEdit();
     KeyObject keyObject = new KeyObject("firstname", "lastname", "TestCompany", "TestProductName", "1.0.0");
     string regPath = KeyUtil.BuildRegPath(keyObject);
     reg.DeleteKey(regPath, "TestCompany");
     //Execute  
     //Verify
     try 
     {
         reg.Read(null);
     }
     catch (Exception ex) { Assert.IsTrue(true, ex.Message); }
     Assert.IsNull(reg.Read(regPath)); //Non-existant reg key
     //Undo
 }
 public void TestDeleteKey()
 {
     //Setup
     RegistryEdit reg = new RegistryEdit();
     KeyObject keyObject = new KeyObject("firstname", "lastname", "TestCompany", "TestProductName", "1.0.0");
     string regPath = KeyUtil.BuildRegPath(keyObject);
     Assert.IsNotNull(reg.WriteKey(regPath)); 
     //Execute  
     Assert.IsTrue(reg.DeleteKey(regPath, "TestCompany"));
     //Verify
     Assert.IsNull(reg.Read(regPath)); 
     //Undo
 }
示例#3
0
 public static DateTime GetExpireDate(KeyObject key)
 {
     RegistryEdit reg = new RegistryEdit();
     RegistryKey regKey = reg.Read(BuildRegPath(key));
     object regValue = regKey.GetValue("ExpireDate");
     try
     {
         return DateTime.Parse(regValue.ToString());
     }
     catch 
     {
         return DateTime.MinValue;//Invalid date
     }
 }
示例#4
0
        public static KeyObject GetInstalledKey(string companyName, string productName, string productVersion)
        {
            KeyObject key = new KeyObject("", "", companyName, productName, productVersion);
            string regPath = BuildRegPath(key);
            RegistryEdit reg = new RegistryEdit();
            RegistryKey regKey = reg.Read(regPath);
            if (regKey == null) return null;

            object keyName = regKey.GetValue("KeyName");
            object keyCode = regKey.GetValue("KeyCode");
            if (keyName != null)
                key.Name = keyName.ToString();

            if (keyCode != null)
                key.Key = keyCode.ToString();
            return key;
        }
示例#5
0
        public static bool IsKeyInstalled(KeyObject key)
        {            
            RegistryKey regKey = null;

            if (key != null)
            {
                string regPath = BuildRegPath(key);
                RegistryEdit reg = new RegistryEdit();
                regKey = reg.Read(regPath);
                if ((regKey != null) &&
                    ((regKey.GetValue("KeyName").ToString() == key.Name) & (regKey.GetValue("KeyCode").ToString() == key.Key)))
                {
                    return true;
                }
            }

            return false; //If we make it this far, the key was not installed.
        }