تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] كيف يتم الـ Automatically Update للتطبيق بشكل احترافي ؟
#1
Question 
السلام عليكم ورحمة الله وبركاته ..
اسعد الله اوقاتكم وملأها بالطاعات ..

أحبتي لقد شاغلتني طريقة التحديث التلقائي لأي تطبيق يتم برمجته ! .. ولكن عملت بعض الخطوات التي سأسردها عليكم ولي بعض التعليقات وهي كالتالي :
قمت بعمل فورم 1 ( main ) ويوجد به Button1 فقط ، وفورم 2 ( Search ) ويوجد به فقط TonguerogressBar1 + Timer1، وفورم 3 ( Download ) يحتوي على :
RichTextBox1 + 2 Button .
العملية كالتالي :
الفورم الأول يتم الضغط على الـButton1 ليظهر فورم الفحص (Search) والذي من خلاله يتم البحث عن التحديثات فإن لم تتوفر تحديثات ظهرت رسالة مفادها : لا تتوفر تحديثات جديدة ، وإن كان هنالك تحديثات جديدة يتم عرض الفورم 3 ( Download ) وفي هذا الفورم يتم ظهور تفاصيل النسخة الجديدة في الـ RichTextBox1 بمعنى سيكون متصل بمستند نص عبر الاترنت ، والـ Button 1 عبارة عن زر تحميل النسخة برابط مباشر .. والـ Button 2 عبارة عن زر اغلاق الفورم .

تقريباً العملية ناجحة معي ولا توجد بها إشكالية ولكن لدي سؤال هام :
كيف أجعل التطبيق دوماً يقوم بالفحص عند تشغيل الفورم ( main ) دون ظهور أية اشكالات فإن توفرت نسخة جديدة مباشرة يتم عرض الفورم ( Download ) الذي به الخصائص والمميزات للنسخة ، وإن لم تتوفر نسخة جديدة لا تظهر رسالة "بأنه لا تتوفر نسخة جديدة " نهائياً .

من لديه خلفية فليفيدني في هذا الجانب .

وهذه الأكواد الخاصة بالـ Forms :
Form1 (main) Button1
كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Search.Show()
    End Sub
Form2 (Search ) Timer1
كود :
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        ProgressBar1.Increment(2)
        If ProgressBar1.Value = 100 Then
            Timer1.Stop()

            If ProgressBar1.Value = 100 Then
                Dim request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("رابط المستند النصي")
                Dim response As System.Net.HttpWebResponse = request.GetResponse()

                Dim sr As System.IO.StreamReader = New System.IO.StreamReader(response.GetResponseStream())

                Dim newestversion As String = sr.ReadToEnd()
                Dim currentversion As String = Application.ProductVersion
                If newestversion.Contains(currentversion) Then
                    MsgBox("لا توجد تحديثات جديدة ", MsgBoxStyle.Information, "لا توجد تحديثات")
                    Me.Close()
                    Exit Sub
                Else
                    Download.Show()
                    Me.Hide()
                End If
            End If
        End If
    End Sub
كود :
Public Sub CheckForUpdates()
        If ProgressBar1.Value = 100 Then
            Dim request As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("رابط المستند النصي")
            Dim response As System.Net.HttpWebResponse = request.GetResponse()

            Dim sr As System.IO.StreamReader = New System.IO.StreamReader(response.GetResponseStream())

            Dim newestversion As String = sr.ReadToEnd()
            Dim currentversion As String = Application.ProductVersion
            If newestversion.Contains(currentversion) Then
                MsgBox("لا توجد تحديثات جديدة", MsgBoxStyle.Information, "لا توجد تحديثات")
                Me.Close()
                Exit Sub

            Else
                Download.Show()
                Me.Hide()
            End If
        End If
    End Sub
Form3 (Download ) Button1
كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Process.Start("رابط التحميل المباشر للتطبيق")
    End Sub
Form3 (Download ) Button2
كود :
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Me.Close()
    End Sub
Form3 (Download ) RichTextBox1
كود :
Private Sub Download_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        On Error Resume Next
        Dim address As String = "رابط مستند التفاصيل الجديدة"
        Dim client As WebClient = New WebClient()
        Dim reader As StreamReader = (New StreamReader(client.OpenRead(address)))
        RichTextBox1.Text = reader.ReadToEnd
    End Sub


اعتذر عن الإطالة ولكم خالص تحياتي .
قــراءة حــجــازية
سبحان الله وبحمده ، سبحان الله العظيم
فيس بوك
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  إضافة مسار لمستند الوورد للوصول إليه بشكل أسرع أبووسم 4 131 10-11-16, 10:32 PM
آخر رد: أبووسم
Star [VB.NET] واجهتني مشاكل فى التنزيل من اليوتيوب حبيت اعملها بطريقة تانية لكنها لم تنجح بشكل كامل elhon.tec 0 45 07-11-16, 01:41 AM
آخر رد: elhon.tec
  [سؤال] طلب لمثال عن انشاء حماية للبرنامج في vb.net 2012 مع فكرة بحاجة للتطبيق M@GED 12 316 05-11-16, 10:49 AM
آخر رد: أبو عمر
Lightbulb المساعدة في معرفة طريقة كتابة الأكواد بشكل صحيح ... Arabia 0 73 26-10-16, 03:18 PM
آخر رد: Arabia
Smile [VB.NET] كيف يمكن عمل كشف حساب بشكل تفصيلي مرفق صورة توضيحية MH mekawy 0 111 16-10-16, 07:12 PM
آخر رد: MH mekawy
  هام وعاجل .... كيف يمكن عمل كشف حساب بشكل تفصيلي مرفق صورة توضيحية MH mekawy 0 138 16-10-16, 04:40 PM
آخر رد: MH mekawy
  [VB.NET] طلب انشاء جملة update في مشروعي Codack 7 202 11-10-16, 04:41 PM
آخر رد: Codack
  ماهو Invalidate والفرق بينه وبين refresh و update LoveVb 4 122 14-08-16, 06:19 PM
آخر رد: LoveVb
  [سؤال] مشكلة فى ظهور شاشات البرنامج بشكل كامل على الاب توب DR.YASER 10 430 10-08-16, 03:21 PM
آخر رد: silverlight
  مساعدة في توظيف الكود بشكل صحيح riad21 16 407 12-07-16, 09:21 PM
آخر رد: riad21

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم