public void SerializeAppInfoCollection(string sPath) { ApplicationInfoCollection refAppInfos = new ApplicationInfoCollection(); CreateDefaultAppInfoCollection(ref refAppInfos); XmlSerializer xmlSer = new XmlSerializer(typeof(ApplicationInfoCollection)); TextWriter writer = new StreamWriter(sPath); xmlSer.Serialize(writer, refAppInfos); writer.Close(); }
public void CreateDefaultAppInfoCollection(ref ApplicationInfoCollection refAppInfos) { refAppInfos.CollectionName = "ApplicationInfoCollection"; ApplicationInfo app0 = new ApplicationInfo("FILES", "HySpell 3.0 Armenian Spellchecker for Office", "HySpell", "3.0.0"); refAppInfos.Add(app0); ApplicationInfo app1 = new ApplicationInfo("SPELLCHECKER", "HySpell 3.0", "HySpell", "3.0.0.0"); refAppInfos.Add(app1); }
public void DeSerializeAppInfoCollection(ref ApplicationInfoCollection oRefAppInfos, string sPath) { if (!File.Exists(sPath)) { SerializeAppInfoCollection(sPath); } XmlSerializer deserializer = new XmlSerializer(typeof(ApplicationInfoCollection)); TextReader textReader = null; try { textReader = new StreamReader(sPath); oRefAppInfos = (ApplicationInfoCollection)deserializer.Deserialize(textReader); textReader.Close(); } catch { CreateDefaultAppInfoCollection(ref oRefAppInfos); } }
private void SetupInstallControls() { ApplicationInfoCollection refAppInfos = new ApplicationInfoCollection(); int nIndex = Application.ExecutablePath.LastIndexOf('\\'); string sPath = Application.ExecutablePath.Substring(0, nIndex) + "\\Files\\ApplicationVersionInfo.xml"; //HM //string sPath = "C:\\Haro\\DBProjects\\HySpell\\SetupApp\\SetupApp\\Files\\ApplicationVersionInfo.xml"; DeSerializeAppInfoCollection(ref refAppInfos, sPath); foreach (ApplicationInfo appInfo in refAppInfos) { if (appInfo.ProductID == "FILES") { foreach (ListViewItem item in lstPrograms.Items) { if (item.SubItems[0].Text.Contains(appInfo.ProductName) && item.SubItems[1].Text == appInfo.Version && item.SubItems[2].Text.StartsWith(appInfo.Publisher)) { btnInstalFilesDicts.Enabled = false; lblStep1.ForeColor = SystemColors.GrayText; lblStep1.Text = "(INSTALLED)"; } } } else if (appInfo.ProductID == "SPELLCHECKER") { bool bWInstalled = false; bool bOLInstalled = false; foreach (ListViewItem item in lstPrograms.Items) { if (item.SubItems[0].Text == appInfo.ProductName && item.SubItems[1].Text == appInfo.Version && item.SubItems[2].Text.StartsWith(appInfo.Publisher)) { chkWInstalled.Checked = true; chkWInstalled.ForeColor = System.Drawing.Color.Green; bWInstalled = true; } if (item.SubItems[0].Text == appInfo.ProductName.Replace("HySpell", "HySpellOL") && item.SubItems[1].Text == appInfo.Version && item.SubItems[2].Text.StartsWith(appInfo.Publisher)) { chkOLInstalled.Checked = true; chkOLInstalled.ForeColor = System.Drawing.Color.Green; bOLInstalled = true; } } if (bWInstalled && bOLInstalled) { btnInstallSpellChecker.Enabled = false; lblStep2.ForeColor = SystemColors.GrayText; lblStep2.Text = "(INSTALLED)"; } } //else if (appInfo.ProductID == "SPELLCHECKEROL") //{ // btnInstallSpellChecker.Enabled = true; // lblStep2.ForeColor = Color.Red; // lblStep2.Text = "(REQUIRED)"; // foreach (ListViewItem item in lstPrograms.Items) // { // if (item.SubItems[0].Text == appInfo.ProductName // && item.SubItems[1].Text == appInfo.Version // && item.SubItems[2].Text.StartsWith(appInfo.Publisher)) // { // btnInstallSpellChecker.Enabled = false; // lblStep2.ForeColor = SystemColors.GrayText; // lblStep2.Text = "(INSTALLED)"; // } // } //} } }