Bir önceki makalede Asp.net ile mail göndermeyi anlatmıştık. Bunu yapmışken yine System.Net ve System.Net.Mail 'den faydalanarak toplu mail işlemi nasıl gerçekleştirilir onu öğreneceğiz. Ama bu sefer bu işlemi C#.Net ile yapacağız. İlk olarak yapacaklarımız tabiki System.Net ve System.Net.Mail'i eklemek. Aynı zamanda da Text dosyasından toplu mail adreslerini okumak için System.IO 'yu da kullanacağız. Gel gelelim işlemlerimize ilk olarak ekleme işlemlerimizi yapalım.

using

 

System.IO;
using System.Net;
using System.Net.Mail;

Evet. Namespacemize bunları ekledikten sonra geldi Nesnelerimizi eklemeye. Ben ekleyeceğiniz nesneleri ve onların özelliklerini yazıyorum.

5 Tane Textbox ekliyoruz. Bunların özellikleri ve isimleri şöyle olacak.

1.ci Textbox : Name = "txtSunucu"
2.ci Textbox : Name = "txtMailAdresi"
3.cü Textbox: Name = "txtParola" , PasswordChar = "*"
4.cü Textbox: Name = "txtKonu"
5.ci Textbox : Name = "txtMesaj" , Multiline = "true"

1 Tane Listbox : Name = "lblMailler"

2 Tane Button

1.ci Button : Name = "btnYukle"
2.ci Button : Name = "btnGonder"

Bütün bunları oluşturduktan sonra sıra geliyor ihtiyacımız olanlara. Ben süs olsun diye 3 tane de groupbox yaptım ve bunları grupladım. Bunu sizde gerçekleştirebilirsiniz. Daha sonra aşağıdaki kodları btnYukle ve btnGonder in Clik olayına yazdım. Kendinize göre düzenleyin.

 

private void btnYukle_Click(object sender, EventArgs e)
{
try
{
dlgOpenFile.ShowDialog();
if (dlgOpenFile.FileName != "")
{
lbMailler.Items.Clear();
StreamReader srRead = new StreamReader(dlgOpenFile.FileName);
while (srRead.EndOfStream==false)
{
lbMailler.Items.Add(srRead.ReadLine().ToString());
}
srRead.Close();
}
}
catch (Exception ex)
{
MessageBox.Show("Hatalı Yükleme !\n\n" + ex.Message);
}
}

 

private void btnGonder_Click(object sender, EventArgs e)
{
try
{
SmtpClient MailSender = new SmtpClient(txtSunucu.Text);
MailSender.Credentials =
new NetworkCredential(txtMailAdresi.Text, txtParola.Text);
MailMessage Mail = new MailMessage();
Mail.Body = txtMesaj.Text;
// Mesajınız
Mail.IsBodyHtml = true; // Mail Formatı // Eğer Mailiniz Html Kodu içermeyecekse False olsun
Mail.Subject = txtKonu.Text; // Mailinizin Konusu
Mail.From = new MailAddress(txtMailAdresi.Text); // Gönderen Adresi
for (int i = 0; i < lbMailler.Items.Count; i++) // Gönderilecek Maillerin Yüklenmesi.
{
Mail.To.Add(lbMailler.Items[i].ToString());
}
MailSender.Send(Mail);
// Mailin Gönderilmesi

 

MessageBox.Show("Tüm Mailler Başarı İle Gönderildi");
}
catch (Exception ex)
{
MessageBox.Show("Hata Oluştu :\n\n" + ex.Message);
}
}

Daha sonra programı derleyip çalıştırabilirsiniz. Programın ekran görüntüsünü de vereyim :

Programın kaynak kodlarını indirmek içinde buraya tıklayabilirsiniz.

Yararlı bir makale olması dileği ile.

Selametle...



Yorumlar

bilal Adak 8/4/2009 1:08 AM
smtpclient kodunun bulundugun satirin altina asagidaki kodu eklerseniz sorununuz ortadan kalkacaktir selametle.

MailSender.EnableSsl = true;
Serkan 7/23/2009 11:19 AM
Ellerine sağlık güzel olmuş ama programda sanırım hata var.Mail portu otomatik olarak mı yoksa? Ben denedim ama olmadi.
RiyaC 7/20/2009 9:05 PM
Uzun zaman olmuş,yorum yaptığımı gördüm bir teşekkür etmeden geçemeyeceğim teşekkür ederim cevap verdiğiniz için :)
Selçuk ERMAYA 6/29/2009 11:37 AM
Tamamdır ;)
ALi 6/29/2009 11:16 AM
Usta Bu Kaynak Kod Linkini yenilemen mumkunsa yeniliyebilirmisin inndiremiyorumda .elline sağlık cok sagol paylaşımlarından dolayı (F)
Bora Şenyiğit 2/20/2009 12:07 PM
Üstad emeğine sağlık. gerçekten çok süper olmuş. ancak şöyle bir sorunum oldu :)

gmail üzerinden mail göndermek istediğimde sunucu bölümüne smtp.gmail.com yazdığımda "client was not authenticate" uyarısı veriyor. gmail'in gelen giden rakamları 465-995 şeklindeydi yanılmıyorsam. Bu ayarlamaları nasıl yapabiliriz?
özcan kahraman 12/22/2008 11:25 PM
çok işime yaradı teşekkrüler, eline sağlık üstad..
Murat ŞENCAN 9/16/2008 3:31 PM
Merhabalar,
Öncelikle gerçekten Allah razı olsun sizden. Çok faydasını gördüm makalelerinizin.
Size bir sorum olacak ama eğer cevaplarsanız sevinirim.
Attach yapmak istersek nasıl yaparız maile otomatik olarak?
İyi Çalışmalar.
Saygılar.
Selçuk ERMAYA 5/29/2008 9:19 PM
Yani bilgim yok kadar az ama php kodlarını okuyabilecek kadar bilgim var olduğunu düşünüyorum :)
RiyaC 5/29/2008 6:02 PM
asp.net dersleri verdiğin çok güzel olmuş ama birşey sormadan geçemeyeceğim php bilgin varmıdır Selcuk Abi ?!

Yorum Yaz

Adınız: *
E-Mail Adresiniz: *
Web Sitesi:
Yorum: *
Güvenlik Kodu: *
 
RSS 2.0
Sor Bakalım...
Arama
  Ara
Paylaş
| Diğer
Destek