void IXmlSerializable.ReadXml(XmlReader reader) { Name = reader.GetAttribute("name"); Uuid = reader.ReadGuid("uuid"); Clsid = reader.ReadGuid("clsid"); AppPath = reader.GetAttribute("path"); Policy = reader.ReadEnum <IEElevationPolicy>("policy"); }
private void LoadFromRegistry(RegistryKey key) { List <Guid> clsidList = new List <Guid>(); object policyValue = key.GetValue("Policy", 0); if (policyValue != null) { Policy = (IEElevationPolicy)Enum.ToObject(typeof(IEElevationPolicy), key.GetValue("Policy", 0)); } string clsid = (string)key.GetValue("CLSID"); if (clsid != null) { if (Guid.TryParse(clsid, out Guid cls)) { Clsid = cls; } } string appName = (string)key.GetValue("AppName", null); string appPath = (string)key.GetValue("AppPath"); if ((appName != null) && (appPath != null)) { try { Name = HandleNulTerminate(appName); AppPath = Path.Combine(HandleNulTerminate(appPath), Name).ToLower(); } catch (ArgumentException) { } } }