YoRuMSuZ
Biz işimize bakalım...
Öncelikle şunu belirtmeliyim ki programdan sağlık verimli alabilmeniz için SMTP desteği veren bir mailiniz olması gerekir. Eğer bir hosting sahibiyseniz size host firması bu desteği zaten veriyordur.
Ücretsiz SMTP desteği veren hotpop.com var ancak çok sağlıksız çalışıyor.
Burada tanıttığım program da aynı mantıkla çalışıyor. Tek farkı eklenti eklenebilmesi.
Programımıza geçelim. Çok yeni olsanız bile anlayacağınız şekilde anlatıyorum.
Form üzerine Standart sekmesinde bulunan bileşenlerden 4 adet Edit, 1 adet Memo, 2 adet Button yerleştiriyoruz. Bir de mail gönderme durumumuzu gösteren Label bileşeni ekliyoruz. (Edit kutuları açıklamaları için de kendinize göre labeller girebilirsiniz)
Şimdi Indy Clients sekmesinden bir adet IdSMTP, ve Indy Misc sekmesinden bir adet IdMessage bileşeni ekliyoruz.
Artık formumuz yaklaşık alttaki gibi görünüyor olmalı. Siz tabii farklı bir yerleşim seçebilirsiniz.
Form üzerine yerleştirdiğimiz IdSMTP1 bileşenini seçili hale getirip Object Inspector > Properties sekmesinden gerekli ayarları yapıyoruz. Buradaki ayarlar;
AuthenticationType : atLogin
Host : SMTP destekli host adresi (SMTP ayarlarında bunun nasıl girileceği zaten gösteriliyor)
Password : Mail adresimizin şifresi
Usarname : Mail adresimiz.
Bu işlemde bittiğine göre "Gönder" butonuna tıklayarak mailimizi göndermek için gerekli kodları girmek kaldı.
Form üzerine yerleştirdiğimiz botonlardan birinin Caption özelliğine Gönder, diğerine Kapat yazalım.
Şimdi Button1'e çift tıklayıp OnClick yordamına şu kodları girin.
F12 ye basıp form ekranına dönün ve Button2'ye çift tıklayıp OnClikk yordamına;
yazdık.
İşlemimiz bu kadar. Artık F9 'a basıp programımızı derleyebilir ve hemen kendi mailimize bir ileti göndermekle deneme yapabiliriz.
Kolay gelsin.
Bu programla ilgili kaynak kodları
Program derlenmiş halede şu şekilde görünecek.
Form kaynak kodları yaklaşık alttaki şekilde görünüyor olmalı.
Ücretsiz SMTP desteği veren hotpop.com var ancak çok sağlıksız çalışıyor.
Burada tanıttığım program da aynı mantıkla çalışıyor. Tek farkı eklenti eklenebilmesi.
Programımıza geçelim. Çok yeni olsanız bile anlayacağınız şekilde anlatıyorum.
Form üzerine Standart sekmesinde bulunan bileşenlerden 4 adet Edit, 1 adet Memo, 2 adet Button yerleştiriyoruz. Bir de mail gönderme durumumuzu gösteren Label bileşeni ekliyoruz. (Edit kutuları açıklamaları için de kendinize göre labeller girebilirsiniz)
Şimdi Indy Clients sekmesinden bir adet IdSMTP, ve Indy Misc sekmesinden bir adet IdMessage bileşeni ekliyoruz.
Artık formumuz yaklaşık alttaki gibi görünüyor olmalı. Siz tabii farklı bir yerleşim seçebilirsiniz.
Form üzerine yerleştirdiğimiz IdSMTP1 bileşenini seçili hale getirip Object Inspector > Properties sekmesinden gerekli ayarları yapıyoruz. Buradaki ayarlar;
AuthenticationType : atLogin
Host : SMTP destekli host adresi (SMTP ayarlarında bunun nasıl girileceği zaten gösteriliyor)
Password : Mail adresimizin şifresi
Usarname : Mail adresimiz.
Bu işlemde bittiğine göre "Gönder" butonuna tıklayarak mailimizi göndermek için gerekli kodları girmek kaldı.
Form üzerine yerleştirdiğimiz botonlardan birinin Caption özelliğine Gönder, diğerine Kapat yazalım.
Şimdi Button1'e çift tıklayıp OnClick yordamına şu kodları girin.
Kod:
IdMessage1.From.Address := Edit1.Text;
IdMessage1.Recipients.EMailAddresses := Edit2.Text;
IdMessage1.BccList.Add.Address := Edit3.Text;
IdMessage1.Subject := Edit4.Text;
IdMessage1.Body.Text := Memo1.Text;
try
try
Label6.Caption := 'Lütfen Bekleyiniz ...';
IdSMTP1.Connect(1000);
IdSMTP1.Send(IdMessage1);
except on E:Exception do
Label6.Caption := 'Server meşgul. Daha sonra deneyin!';
end;
finally
Label6.Caption := 'MESAJINIZ GÖNDERİLDİ';
if IdSMTP1.Connected then IdSMTP1.Disconnect;
end;
Kod:
Close;
İşlemimiz bu kadar. Artık F9 'a basıp programımızı derleyebilir ve hemen kendi mailimize bir ileti göndermekle deneme yapabiliriz.
Kolay gelsin.
Bu programla ilgili kaynak kodları
Bağlantıyı görüntüleme izniniz yok, görüntülemek için:
Giriş yapın veya üye olun.
indirebilirsiniz.Program derlenmiş halede şu şekilde görünecek.
Form kaynak kodları yaklaşık alttaki şekilde görünüyor olmalı.
Kod:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdMessage, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdMessageClient, IdSMTP, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit4: TEdit;
Label4: TLabel;
Memo1: TMemo;
Label5: TLabel;
Button1: TButton;
Button2: TButton;
IdSMTP1: TIdSMTP;
IdMessage1: TIdMessage;
Label6: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
IdMessage1.From.Address := Edit1.Text;
IdMessage1.Recipients.EMailAddresses := Edit2.Text;
IdMessage1.BccList.Add.Address := Edit3.Text;
IdMessage1.Subject := Edit4.Text;
IdMessage1.Body.Text := Memo1.Text;
try
try
Label6.Caption := 'Lütfen Bekleyiniz ...';
IdSMTP1.Connect(1000);
IdSMTP1.Send(IdMessage1);
except on E:Exception do
Label6.Caption := 'Server meşgul. Daha sonra deneyin!';
end;
finally
Label6.Caption := 'MESAJINIZ GÖNDERİLDİ';
if IdSMTP1.Connected then IdSMTP1.Disconnect;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Close;
end;
end.