Kaynak: http://doc-deniz.blogspot.com/2010/0...ad-islemi.htmlGörüntülü anlatım için tıklayın. Yok ben yazı okumayı daha çok severim diyorsanız tıklamayın.
Şimdi öncelikle uploadFile diye bir method var ki bende yabancı bir siteden almıştım.Fazla kurcalamaya gerek yok, bu methodu -asıl işi yapan bu aslında, inceleyin işte- direk kopyalayabilirsiniz.
private void uploadFile(string ftpadresi, string dosyayolu, string kullaniciadi, string sifre)
{
// Ftp request yaratıyoruz.
FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(ftpadresi + "/" + Path.GetFileName(dosyayolu));
request.Method = WebRequestMethods.Ftp.UploadFile;
request.Credentials = new NetworkCredential(kullaniciadi, sifre);
request.UsePassive = true;
request.UseBinary = true;
request.KeepAlive = false;
// Seçilen dosyayı yüklüyoruz.
FileStream stream = File.OpenRead(dosyayolu);
byte[] buffer = new byte[stream.Length];
stream.Read(buffer, 0, buffer.Length);
stream.Close();
// Ve dosyayı upload ediyoruz.
Stream reqStream = request.GetRequestStream();
reqStream.Write(buffer, 0, buffer.Length);
reqStream.Close();
MessageBox.Show("Dosya başarıyla upload edildi.");
}
Yandaki gibi bir tasarım yapalım.Tasarımda zaten ilk 3 textbox gayet açık.Bunun yanında 1 adet openfiledialog eklemeniz gerekiyor.Gözat butonuna tıklandığında openfiledialog açılacak ve gelen dosya adresini textBox4′e yazacak.Daha sonra upload !
Gözat butonumuza çift tıklayalım ve aşağıdaki kodları girelim.
if (openFileDialog1.ShowDialog() == DialogResult.OK)
textBox4.Text = openFileDialog1.FileName;
Daha sonra upload butonuna çift tıklayalım ve;
button2.Enabled = false;
uploadFile(textBox1.Text, textBox4.Text, textBox2.Text, textBox3.Text);
button2.Enabled = true;
satırlarını ekleyelim.Bu durumda upload yapmaya hazırız.Ancak bir kaç uyarım var.Eğer ftp adresinin başında ftp:// olmazsa hata verecektir.Eğer bunu engellemek istiyorsanız, upload işleminden önce aşağıdaki satırları ekleyebilirsiniz.
if (!textBox1.Text.StartsWith("ftp://"))
textBox1.Text = "ftp://" + textBox1.Text;
Birde unutmadan bu şekilde upload yaptığınızda upload ettiğiniz dosyalar /www klasörüne gitmeyecektir.Eğer www klasörüne gitmelerini istiyorsanız, ftp adresinin sonuna /www ekleyebilir,ekletebilirsiniz.
İyi günler, orta dünyanın barışçıl halkları.
C# ile FTP Upload [Ders]
5
●5.525
- 10-07-2010, 23:20:37Üyeliği durdurulduÇok öncelerde yazmış olduğum bir yazı.
