smtp ssl ile yandex üzerinden mail gönderme

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen erdogan_ozkaya »

Arkadaşlar bir çok mail gönderme projesi hazırlanmış fakat yandex üzerinden bir projeye ulaşamadım paylaşan olursa teşekkürler.
ertank
Kıdemli Üye
Mesajlar: 1651
Kayıt: 12 Eyl 2015 12:45

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen ertank »

Merhaba,

Ben soruyu anlayamadım. Biraz daha detay verebilir misiniz?

- Bir Delphi uygulaması Yandex e-mail sunucu bilgilerini kullanarak kendisi üzerinden örneğin gmail üzerindeki bir e-mail adresine mi e-mail gönderecek?
- Bir Delphi uygulaması Yandex web arabirimine komutlar göndererek Yandex web sisteminin e-mail göndermesini mi sağlayacak?
Kullanıcı avatarı
csunguray
Üye
Mesajlar: 855
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: SMTP ssl ile yandex üzerinden mail gönderme.

Mesaj gönderen csunguray »

Kod: Tümünü seç

procedure TFormSmtp.ActionTestExecute(Sender: TObject);
{
var
  SMTP: TIdSMTP;  // Form üzerinde
  LHandler: TIdSSLIOHandlerSocketOpenSSL; // Form üzerinde
  EPosta: TIdMessage;  // Form üzerinde
  Memo1: TMemo;  // Form üzerinde
}
begin
  inherited;
  Memo1.Lines.Add('SMTP Test.');
  try
    if SMTP.Connected then SMTP.Disconnect;
    SMTP.Host := 'smtp.yandex.com';
    SMTP.AuthType := satDefault;
    SMTP.Username := 'falanfilan@yandex.com.tr';
    SMTP.Password := '123xyz';
    SMTP.AuthType := satNone;

    SMTP.Port := 465;

    // SSL ayarları
    Memo1.Lines.Add('SMTP Test - SSL ayarları yapılıyor.');
    LHandler.Destination := SMTP.Host + ':' + IntToStr(SMTP.Port);
    LHandler.Host := SMTP.Host;
    LHandler.Port := SMTP.Port;
    LHandler.DefaultPort := 0;
    LHandler.SSLOptions.Method := sslvTLSv1;
    LHandler.SSLOptions.Mode := sslmUnassigned; // sslmClient;
    LHandler.SSLOptions.VerifyMode := [];
    LHandler.SSLOptions.VerifyDepth := 0;
    SMTP.IOHandler := LHandler;
    SMTP.UseTLS := utUseImplicitTLS;
    SMTP.ConnectTimeout := 10000;

    Memo1.Lines.Add('SMTP Test - Bağlanılıyor.');
    SMTP.Connect;

    Memo1.Lines.Add('SMTP Test - Deneme e-postası gönderiliyor.');
    EPosta.Clear;
    EPosta.From.Address := 'falanfilan@yandex.com.tr';

    EPosta.From.Name := 'Adım ve Soyadım';

    EPosta.ReplyTo.EMailAddresses := 'falanfilan@yandex.com.tr';
    EPosta.Subject := 'Deneme mesaji';

    with EPosta.Recipients.Add do
    begin
      Name := 'Alıcı Adı ve Soyadı ve Soyadım';
      Address := 'saricizmeli@yandex.com.tr';
    end;
    //EPosta.ContentType := 'type="text/html"';

    EPosta.Body.Text :=
      'Deneme mesajı başarı ile gönderildi.' + #13 + #10 + #13 + #10 +
      'Host: ' + SMTP.Host + #13 + #10 +
      'Port: ' + IntToStr(SMTP.Port := 465) + #13 + #10 +
      'Gönd. E-Posta: ' + 'falanfilan@yandex.com.tr' + #13 + #10 +
      'User: ' + 'falanfilan@yandex.com.tr' + #13 + #10 +
      'Password: ' + '123xyz';

    EPosta.CharSet := 'utf-8'; // 'iso-8859-9';
    SMTP.Send(EPosta);
    ///ShowMessage('Bağlantı başarılı. "xxx" adresine bir deneme e-postası gönderilmiştir.');
    Memo1.Lines.Add('Bağlantı başarılı.');
    ShowMessage('Bağlantı başarılı.');
  finally
    Memo1.Lines.Add('SMTP Test - Bağlantı sonlandırılıyor.');
    if SMTP.Connected then SMTP.Disconnect;
  end;
end;
Bu kodların çalışabilmesi için OpenSSl kütüphanesine ait libeay32.dll ve ssleay32.dll dosyalarının programın olduğu klasörde veya sistem klasörlerinden birinde olması gerekir. Bu dosyaları http://indy.fulgan.com/SSL/ bağlantısından veya https://slproweb.com/products/Win32OpenSSL.html bağlantısından indirebilirsiniz.
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen erdogan_ozkaya »

Hocam cevabınız için çok teşekkür ederim 2 gündür uğraşıyorum ama bir türlü çözemedim dll yükledim acaba vaktiniz varsa bir örnek atabilirmisiniz.

teşekkürler
Kullanıcı avatarı
csunguray
Üye
Mesajlar: 855
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen csunguray »

Hafta sonu örnek bir uygulama yazdım ve bir makale olarak siteye ekledim. Aşağıdaki bağlantıdan indirip inceleyebilirsiniz. Bir sorun yaşarsanız yardımcı olmaya çalışırım.

Delphi'de Indy SMTP ile e-mail gönderme. (GMail, Yandex, Yahoo)
viewtopic.php?f=19&t=36038
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen erdogan_ozkaya »

Elinize sağlık,

hocam delphi7 kullanıyorum projeyi çalıştıramadım, bir component gerekli sanırım ssl ile ilgili yardımcı olabilir misiniz.

teşekkürler
Kullanıcı avatarı
csunguray
Üye
Mesajlar: 855
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen csunguray »

Ne hata alıyorsunuz? Program derlenmiyor mu? Çalıştırırken mi hata veriyor?
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen erdogan_ozkaya »

hocam, aldığım hata mesajları aşağıdaki gibi.

Resim
Resim
Resim
Resim
Resim
Resim
Kullanıcı avatarı
csunguray
Üye
Mesajlar: 855
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen csunguray »

Delphi 7'de de sorunsuz çalışıyor. Ama sizde Indy bileşenlerinin eski sürümü yüklü. Manual olarak yeni sürümü yüklemelisiniz. Ki bu biraz uzmanlık gerektiriyor.
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen erdogan_ozkaya »

yardımcı olmanız mümkün mü acaba ? :)
Kullanıcı avatarı
csunguray
Üye
Mesajlar: 855
Kayıt: 09 Ara 2006 05:08
Konum: Adana
İletişim:

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen csunguray »

Aşağıdaki sayfalardaki örnekleri inceleyin:

http://delphi.xcjc.net/viewthread.php?tid=45523
http://www.cyberforum.ru/delphi-network ... 08825.html

Bu örneklerde TIdSSLIOHandlerSocketOpenSSL yerine TIdSSLIOHandlerSocket bileşeni kullanılmış.
C. Sunguray
csunguray at netbilisim.kom
Net Bilişim Hizmetleri

Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen erdogan_ozkaya »

çözmeye çalışcam :) ilgi ve alakanız için teşekkürler
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen erdogan_ozkaya »

hocam,

burayı inceleyerek indiy10 kurdum açılışta hata vermiyor ama derlerken aşağıdaki hatayı veriyor ?

teşekkürler


viewtopic.php?t=29025

Resim
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen erdogan_ozkaya »

[Fatal Error] SmtpTest.dpr(5): File not found: 'Vcl.Forms.dcu'
ertank
Kıdemli Üye
Mesajlar: 1651
Kayıt: 12 Eyl 2015 12:45

Re: smtp ssl ile yandex üzerinden mail gönderme

Mesaj gönderen ertank »

erdogan_ozkaya yazdı:[Fatal Error] SmtpTest.dpr(5): File not found: 'Vcl.Forms.dcu'
Project - View Source ekranında uses içinde Vcl.Forms kısmını bulup Forms olarak değiştirin. Delphi 7 için bu şekilde tanımlanmalı.
Cevapla