03-08-13, 10:07 PM
السلام عليكم..
وجدت مشروع عمل تحديث البرنامج ولكن عند تطبيقه على برنامجي تظهر عند هذا السطر
المشكلة عند تنفيذالبرنامج تظهر رسالة الخطأ التالية .... The remote server returned an error: (406) Not Acceptable.
و هذا كود البرنامج كاملا
وجدت مشروع عمل تحديث البرنامج ولكن عند تطبيقه على برنامجي تظهر عند هذا السطر
PHP كود :
Dim Reader As StreamReader = New StreamReader(Request.GetResponse.GetResponseStream())
و هذا كود البرنامج كاملا
PHP كود :
Imports System.Net
Imports System.IO
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
CheckL.Text = "جاري الفحص..."
'رابط الملف الموجود فيه رقم اخر اصدار
Dim VersionURL As String = " http://moddec.eb2a.com/myprog/UpdateVersion.txt"
'قراءة الملف الذي يوجد به رقم اخر اصدار
Dim Request As HttpWebRequest = WebRequest.Create(VersionURL)
' قراءة الملف
Dim Reader As StreamReader = New StreamReader(Request.GetResponse.GetResponseStream())
'اخر تحديث لبرنامج
Dim NewVersion As String = Reader.ReadToEnd()
Reader.Dispose()
'-----فحص اذا كان هناك تحديث جديد ام لا------
If Trim(NewVersion) > Trim(Application.ProductVersion) Then
'-الدالة Application.ProductVersion
'-هي التي يوجد بها رقم الاصدار الحالي لبرنامج
'-وهذا الكود يقارن رقم احدث اصدار موجود بالانترنت بالرقم الاصدار الحالي بالبرنامج
'----------هناك اصدار جديد-------------
'رابط الملف الموجود فيه رابط تحميل اخر اصدار من البرنامج
Dim UpdateLink As String = " http://moddec.eb2a.com/myprog/UpdateLink.txt"
CheckL.Text = "هناك اصدار جديد"
' قراءة الملف الذي يوجد به رابط التحميل
Dim LinkRequest As HttpWebRequest = WebRequest.Create(UpdateLink)
Dim LinkReader As StreamReader = New StreamReader(LinkRequest.GetResponse.GetResponseStream())
Dim DownNewVersion As String = LinkReader.ReadToEnd
LinkReader.Dispose()
'نوع الملف الموجود في الرابط
Dim FileFormate As String = Strings.Right(DownNewVersion, 4)
'فحص الرابط اذا كان يوجد به نوع الملف ام لا. لو لا يوجد به نوع الملف نجعل نوع الملف الذي سنحملة كملف تنفيذي (exe)
If Strings.Left(FileFormate, 1) <> "." Then FileFormate = ".exe"
'هذه للعب بالفورمات حيث ان معظم المواقع لا تقبل الملفات التنفيزية
If FileFormate = ".noo" Then FileFormate = ".exe"
' تحميل الملف الجديد
CheckL.Text = "جاري التحميل"
My.Computer.Network.DownloadFile(DownNewVersion, Application.StartupPath & "\NewUpdate" & NewVersion & FileFormate, "", "", True, 100, True)
CheckL.Text = "تم تحميل التحديث بنجاح"
MsgBox("تم تحميل التحديث بنجاح", MsgBoxStyle.Information)
' فتح الملف الجديد
System.Diagnostics.Process.Start(Application.StartupPath & "\NewUpdate" & NewVersion & FileFormate)
End ' الخروج
Else '-------لا يوجد اي اصدارات جديدة-----------
CheckL.Text = "لا يوجد اي اصدارات جديدة"
MsgBox("لا يوجد اي اصدارات جديدة", MsgBoxStyle.Information)
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
End Class