يا ليت يا شبباب لو في واحد يشرح لي كيف يمكن احمل ملف الى موقع عن طريق ال
FtpWebRequest
انا تعبت بحث والله
يا ليت يا شبباب لو في واحد يشرح لي كيف يمكن احمل ملف الى موقع عن طريق ال
FtpWebRequest
انا تعبت بحث والله
if You.needhelp = true then
msgbox ("Never Ever Ask dam Question Before Searching in google")
Else
msgbox ("You are Doing Good")
End ifالسلام عليكم ..
والله للأسف ياأخي ما اشتغلت عليه قبل لأنه جديد واعتقد نزل مع الإصدار الثالث للفريم وورك
ولكن حسب معلوماتي انه إذا اردت ان تعمل أي شي كعرض مجلدات الموقع مثلاً
يجب أن تنشئ Request
myFtpWebRequest.Create
وتعرف فيه الكونيكشن وهي تقريباً بهذا الشكل :
MyConnectString="ftp://" + userName + ":" + password + "@" + serverAddress + ":" + serverPort
ثم بعد ذلك تقوم بإعداد هذا الطلب ( تحدد ماذا تريد أن تفعل ) ونحن هنا نريد أن نستعرض المجلدات ... تقريباً بهذا الشكل :
myFtpWebrequest.Timeout = 10000 myFtpWebrequest.ReadWriteTimeout = 10000 myFtpWebrequest.KeepAlive = False myFtpWebrequest.UseBinary = True myFtpWebrequest.Method = WebRequestMethods.Ftp.ListDirectory
كل هذا لإنشاء أمر لاستعراض المجلدات (إنشاء وإعداد فقط ) ولم نجهز كيف يتم استقبال البيانات بعد استجابة السيرفر
حيث يجب أن تنشئ Response
وتقوم بإعداده كما بالـ Request ولكن بإضافه بسيطه هي انك تضع الاستجابه في متغير وش نوعه لا تسألني :D
تنبيه : أرجو ملاحظة انني لم أجرب هذه الاكواد يمكن تحتاج تعديل ... ولكني أردت المساعده قدر المستطاع
هذا مالدي وأتمنى اني أفدتك ،،،
FtpWebRequest
مثال بالمرفقات المثال تمت برمجته على فيجول استوديوا 2008 بروفشنل
و اذا لم تملك
اعمل
TextBox عدد اربعة
txtIP = لخزن الايبي
txtUser = لخزن اليوزر
txtPass = لخزن الباسورد
txtPath لخزن مسار الملف
Button عدد 2
btnSelect = لختيار ملف
btnUpload = لتصعيد الملف
ثم
Imports System.IO Imports System.Net
تعرف ان يتم وضعها
ثم عرف متغير داخل الكلاس
Dim Path As String
ثم تحت الايفينت Click للزر btnSelect اضف هذا الكود
Dim dlg As OpenFileDialog = New OpenFileDialog If dlg.ShowDialog = Windows.Forms.DialogResult.OK Then txtPath.Text = dlg.FileName Path = dlg.FileName End If
تحت االايفينت Click للزر btnUpload اضف هذا
Private Sub btnUpload_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpload.Click
'هنا نعمل اوبجكت من نوع فايل انفو للفايل الذي تم اختياره
Dim FInfo As FileInfo = New FileInfo(Path)
' نحدد المسار الذي سوف يرفع اليه الفايل
Dim uri As String = String.Format("ftp://{0}/{1}", txtIP.Text, FInfo.Name)
'هنا نقوم بعمل اوبجكت من نوع اف تي بي ركوست
Dim FTPreg As FtpWebRequest
'نضيف المسار و نضيف الوبجكت بعد تكوينه الى الاوبجكت الذي كوناه
FTPreg = FtpWebRequest.Create(New System.Uri(uri))
'هنا نقوم بعمل صلاحيات الدخول كما في جميع انواع النت
Dim NetCred As New NetworkCredential(txtUser.Text, txtPass.Text)
FTPreg.Credentials = NetCred
'تحديد طلول المسار
FTPreg.ContentLength = FInfo.Length
'حتى يتم اغلاق الركوست بعد الانتهاء
FTPreg.KeepAlive = False
'للعمل مع الباينري
FTPreg.UseBinary = True
Dim bArray() As Byte
Dim buff As Integer = 1024
Dim fLen As Integer
'هنا نعمل ستريم و نوقع باضافت الفايل الذي تم اختيياره
Dim fs As FileStream = FInfo.OpenRead
'لتعديل المصفوفة
ReDim bArray(FInfo.Length)
' تحويل بايتات الملف الى المصفوفة
fLen = fs.Read(bArray, fLen, buff)
'لعمل الستريم الخاص بالاف تي بي
Dim FTPst As FileStream = FTPreg.GetRequestStream()
'هنا لوب لاضافات البتات من الفايل ستريم الى الف تي بي ستريم
While (fLen <> 0)
FTPst.Write(bArray, 0, fLen)
fLen = fs.Read(bArray, 0, buff)
End While
'اغلاق الستريمات
fs.Close()
FTPst.Close()
End Subو الان البرنامج جاهز للعمل :D
الشكر الشديدددددددددددددددددددددددددددددددددددد والحار للاخوان : السعوودي و slayer666
على المساعدة
if You.needhelp = true then
msgbox ("Never Ever Ask dam Question Before Searching in google")
Else
msgbox ("You are Doing Good")
End if