منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] كيف اسوي رسال ابديت - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [سؤال] كيف اسوي رسال ابديت (/showthread.php?tid=3591)

الصفحات: 1 2


كيف اسوي رسال ابديت - hassan - 03-08-14

السلام عليكم


شباب انا ابغا اسوي طريقة



ان في صفحة ويب مشغله في البرنامج

ومكتوب فيها مثال كذا

1134254


ابغا اذا تغير الي مكتوب في الصفحة يطلع رساله من اول ما تشغل البرنامج انه في تحديث جديد


او اي طريقة المهم ان ما يقدر يستخدم البرنامج ا بعد الابديت وياريت في طريقة



وشكرا


RE: كيف اسوي رسال ابديت - hassan - 03-08-14

لا احد يعرف


RE: كيف اسوي رسال ابديت - ali.alfoly - 03-08-14

http://vb4arb.com/vb/thread-409.html


RE: كيف اسوي رسال ابديت - hassan - 03-08-14

(03-08-14, 08:22 PM)ali.alfoly كتب : http://vb4arb.com/vb/thread-409.html

اخوي المشروع محذوف الله يعافيك مافي طريقة ثانيه


RE: كيف اسوي رسال ابديت - ali.alfoly - 03-08-14

تفضل اخي


RE: كيف اسوي رسال ابديت - hassan - 03-08-14

(03-08-14, 09:46 PM)ali.alfoly كتب : تفضل اخي

الله يعطيك العافيه بس انا مش فاهم فكرة البرنامج اذا ممكن تشرح


RE: كيف اسوي رسال ابديت - hassan - 04-08-14

كيف ارسل رسالة ال المستخدم ان فيه ابديت


RE: كيف اسوي رسال ابديت - ali.alfoly - 04-08-14

والله ما عندي وقت نهائي
اتمني من احد الاخوة يقوم بذلك


RE: كيف اسوي رسال ابديت - vbnet - 04-08-14

.....

في قولك "...المهم ان ما يقدر يستخدم البرنامج ا بعد الابديت..."
لا أشجعك على هذا.. واترك الخيار للمستخدم إن شاء حدث وإن شاء استمر على النسخة التي لديه


منقول

هذا مثال بسيط باستخدام قراءة ملف صغير على النت يحتوي رقم التحديث الأخير
كود :
Public Class Form1

    ' إنشاء معالج خلفي
    Private WithEvents BackgroundWorker1 As New System.ComponentModel.BackgroundWorker

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        ' تعطيل تضارب المعالجات في حالة محاولة مثلا تغيير خصائص بعض الأدوات من داخل عملية المعالجة
        CheckForIllegalCrossThreadCalls = False

        ' تشغيل المعالج الخلفي
        BackgroundWorker1.RunWorkerAsync()

        ' بعد تشغيل البرنامج ستظهر النافذة بشكل طبيعي
        ' ولكن في الخلفية هناك معالج يقول بفحص ملف على النت
        ' ومن ثم مقارنه برقم التحديث الحالي
        ' واظهار رسالة تبين ذلك

        ' ** ملاحظة
        ' قد تستغرق العملية بعض الوقت حتى يتم الاتصال بالنت لجلب ملف بيانات التحديث ومن ثم مقارنة بياناته

    End Sub


    Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
        ' إستدعاء دالة والتي تعتبر في حال مناداتها من هنا ضمن المعالجة
        If IsUpdateAvailable() Then
            ' إفعل شيئاً
            ' مثلاً تشغيل برنامج تحديث خاص والذي بدوره يقوم
            ' بتنزيل ملف البرنامج في تحديثه الأخير
            ' ثم غلق هذا البرنامج من أجل تبديل ملفه
            ' ثم إعادة تشغيل البرنامج من جديد
        End If
    End Sub

    ' دالة التأكد من وجود تحديث من خلال ملف صغير على النت
    Public Function IsUpdateAvailable() As Boolean
        Try

            ' تعيين ملف نصي مؤقت لحفظ بيانات ملف النت فيه
            Dim tmpFile As String = IO.Path.GetTempPath & Guid.NewGuid.ToString & ".tmp"

            ' تحميل بيانات ملف من النت وحفظ بياناته في الملف المؤقت
            My.Computer.Network.DownloadFile("http://vbnet.byethost11.com/examples/update/update.txt", tmpFile)

            ' على افتراض رقم التحديث الحالي
            Dim CurrentUpdate As String = "1000000"

            ' قراءة بيانات الملف النصي المؤقت
            Dim NewUpdate As String = IO.File.ReadAllText(tmpFile)

            ' هل يحتوي الملف النصي المؤقت على بيانات
            If NewUpdate <> "" AndAlso (NewUpdate <> CurrentUpdate) Then
                MsgBox("رقم التحديث الحالي" & vbNewLine & _
                       CurrentUpdate & vbNewLine & _
                       vbNewLine & _
                       "يوجد تحديث جديد برقم" & vbNewLine & _
                       NewUpdate)
                Return True
            End If

        Catch ex As Exception
        End Try

    End Function

End Class

.....


RE: كيف اسوي رسال ابديت - hassan - 05-08-14

(04-08-14, 12:50 PM)vbnet كتب : .....

في قولك "...المهم ان ما يقدر يستخدم البرنامج ا بعد الابديت..."
لا أشجعك على هذا.. واترك الخيار للمستخدم إن شاء حدث وإن شاء استمر على النسخة التي لديه


منقول

هذا مثال بسيط باستخدام قراءة ملف صغير على النت يحتوي رقم التحديث الأخير
كود :
Public Class Form1

    ' إنشاء معالج خلفي
    Private WithEvents BackgroundWorker1 As New System.ComponentModel.BackgroundWorker

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        ' تعطيل تضارب المعالجات في حالة محاولة مثلا تغيير خصائص بعض الأدوات من داخل عملية المعالجة
        CheckForIllegalCrossThreadCalls = False

        ' تشغيل المعالج الخلفي
        BackgroundWorker1.RunWorkerAsync()

        ' بعد تشغيل البرنامج ستظهر النافذة بشكل طبيعي
        ' ولكن في الخلفية هناك معالج يقول بفحص ملف على النت
        ' ومن ثم مقارنه برقم التحديث الحالي
        ' واظهار رسالة تبين ذلك

        ' ** ملاحظة
        ' قد تستغرق العملية بعض الوقت حتى يتم الاتصال بالنت لجلب ملف بيانات التحديث ومن ثم مقارنة بياناته

    End Sub


    Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
        ' إستدعاء دالة والتي تعتبر في حال مناداتها من هنا ضمن المعالجة
        If IsUpdateAvailable() Then
            ' إفعل شيئاً
            ' مثلاً تشغيل برنامج تحديث خاص والذي بدوره يقوم
            ' بتنزيل ملف البرنامج في تحديثه الأخير
            ' ثم غلق هذا البرنامج من أجل تبديل ملفه
            ' ثم إعادة تشغيل البرنامج من جديد
        End If
    End Sub

    ' دالة التأكد من وجود تحديث من خلال ملف صغير على النت
    Public Function IsUpdateAvailable() As Boolean
        Try

            ' تعيين ملف نصي مؤقت لحفظ بيانات ملف النت فيه
            Dim tmpFile As String = IO.Path.GetTempPath & Guid.NewGuid.ToString & ".tmp"

            ' تحميل بيانات ملف من النت وحفظ بياناته في الملف المؤقت
            My.Computer.Network.DownloadFile("http://vbnet.byethost11.com/examples/update/update.txt", tmpFile)

            ' على افتراض رقم التحديث الحالي
            Dim CurrentUpdate As String = "1000000"

            ' قراءة بيانات الملف النصي المؤقت
            Dim NewUpdate As String = IO.File.ReadAllText(tmpFile)

            ' هل يحتوي الملف النصي المؤقت على بيانات
            If NewUpdate <> "" AndAlso (NewUpdate <> CurrentUpdate) Then
                MsgBox("رقم التحديث الحالي" & vbNewLine & _
                       CurrentUpdate & vbNewLine & _
                       vbNewLine & _
                       "يوجد تحديث جديد برقم" & vbNewLine & _
                       NewUpdate)
                Return True
            End If

        Catch ex As Exception
        End Try

    End Function

End Class

.....







الله يعطيك العافيه كفيت ووفيت