الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

يئست من الامل Ftpwebrequest

بدأه روح الفيجوال بيسك نت في 29 مارس 2008 · 3 رد · 663 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

يا ليت يا شبباب لو في واحد يشرح لي كيف يمكن احمل ملف الى موقع عن طريق ال

FtpWebRequest

انا تعبت بحث والله

if You.needhelp = true then

msgbox ("Never Ever Ask dam Question  Before Searching in google")

Else 

msgbox ("You are Doing Good")

End if
#2

السلام عليكم ..

والله للأسف ياأخي ما اشتغلت عليه قبل لأنه جديد واعتقد نزل مع الإصدار الثالث للفريم وورك

ولكن حسب معلوماتي انه إذا اردت ان تعمل أي شي كعرض مجلدات الموقع مثلاً

يجب أن تنشئ 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

تنبيه : أرجو ملاحظة انني لم أجرب هذه الاكواد يمكن تحتاج تعديل ... ولكني أردت المساعده قدر المستطاع

هذا مالدي وأتمنى اني أفدتك ،،،

#3

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

FTP_Uploder_vbSpirit.zip

#4

الشكر الشديدددددددددددددددددددددددددددددددددددد والحار للاخوان : السعوودي و slayer666

على المساعدة

if You.needhelp = true then

msgbox ("Never Ever Ask dam Question  Before Searching in google")

Else 

msgbox ("You are Doing Good")

End if

مواضيع مشابهة