اندازهی قلم متن
تخمین مدت زمان مطالعهی مطلب:
دو دقیقه
برای شما هم پیش آمده که نرم افزاری را تهیه و منتشر کرده باشید و تمایل داشته باشید که استفاده کنندگان از وجود نسخه بروز شده مطلع شوند. یک راه ساده این است که اطلاعات نسخه جدید نرم افزار را داخل فایلی ذخیره کنیم و در وب سایت پشتیبانی نرم افزار قرار دهیم. حال بایستی اطلاعات این فایل را در زمان اجرای برنامه بررسی کنیم و در صورت وجود نسخه جدید از نرم افزار به کاربر اطلاع رسانی کنیم.
ابتدا فایل اطلاعات بروز رسانی نرم افزار را تهیه میکنیم و در وب سایت پشتیبانی نرم افزار قرار میدهیم. در اینجا از قالب Xml استفاده شده. که در آن Version نسخه در دسترس نرم افزار است و URL هم مسیر وب سایت و یا فایل بروز رسانی است.
<?xml version="1.0" encoding="utf-8"?> <AccountingApplication> <Version>1.5.2</Version> <URL>http://www.myappsupport.ir</URL> </AccountingApplication>
... using System.Xml; namespace CheckUpdateApplication { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void CheckUpdate_Click(object sender, EventArgs e) { Version NewVersion = null; string DownloadPath = ""; try { XmlTextReader xmlRead = new XmlTextReader("http://www.myappsupport.ir/AccUpdateVersion.xml"); xmlRead.MoveToContent(); string elmName = ""; if ((xmlRead.NodeType == XmlNodeType.Element) && (xmlRead.Name == "AccountingApplication")) { while (xmlRead.Read()) { if (xmlRead.NodeType == XmlNodeType.Element) { elmName = xmlRead.Name; } else { if ((xmlRead.NodeType == XmlNodeType.Text) && (xmlRead.HasValue)) { switch (elmName) { case "Version": NewVersion = new Version(xmlRead.Value); break; case "URL": DownloadPath = xmlRead.Value; break; } } } } } Version AppVertion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; if (AppVertion.CompareTo(NewVersion) < 0) { DialogResult Result = MessageBox.Show("نسخه " + NewVersion.Major.ToString() + "." + NewVersion.Minor.ToString() + "." + NewVersion.Build.ToString() + " در دسترس میباشد مایل به دانلود هستید؟", "نسخه جدید", MessageBoxButtons.YesNo,MessageBoxIcon.Question); if (Result == DialogResult.Yes) { System.Diagnostics.Process.Start(DownloadPath); } } else { MessageBox.Show("نرم افزار بروز میباشد"); } } catch (Exception E) { MessageBox.Show(E.Message); } } } }
به روش زیر هم نسخه اسمبلی برنامه را میشود تغییر داد.
سورس برنامه نمونه