Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi SLL kullanım sorunu
#1
Merhabalar ; 

Delphi 10.2 sürümünü kullanıyorum

Bu sürümde bulabildiğim SLL sürümü OpenSLL v1.0.2u 
dosya isimleri : libeay32.dll , ssleay32.dll    

daha yeni sürümlerini 

https://slproweb.com/download/Win32OpenSSL-1_1_1w.exe

burada buldum fakat dosya isimleri farklı olduğu için sanırım görmüyor. Ne yaptıysam SSL sürümünü göremedim zaten diğer dosyaları silersem ssl bulunamadı veriyor,
SSL sürümünü istediğimde de diğer eski olan dosya sürümleri geliyor. 

Postman ile standart delphini WebHook sistemine bir post gönderdiğimde HTTP olursa sorun yok HTTPS olan post işlemlerinde eğer 
Authorization eklersem mesela token barear işte bu soruna neden oluyor hiçbir şekilde sisteme hata düşmüyor , 
yaptığım araştırmalarda SSL ile ilgili olabileiceğini düşündüm ama ne yaptıysam bir çözüme de ulaşamadım. 


Sizden ricam ssl dosyalarını    https://indy.fulgan.com/SSL/  buradan indiriyorum ama burada yeni sürümler yok , diğer tarafdan indirdiğim sürümleri de tanıtamıyorum. Bu konuda bilgisi olan arkadaşlardan yardım rica ediyorum.
Cevapla
#2
(04-11-2025, Saat: 17:35)Bay_Y Adlı Kullanıcıdan Alıntı: Merhabalar ; 

Delphi 10.2 sürümünü kullanıyorum

Bu sürümde bulabildiğim SLL sürümü OpenSLL v1.0.2u 
dosya isimleri : libeay32.dll , ssleay32.dll    

daha yeni sürümlerini 

https://slproweb.com/download/Win32OpenSSL-1_1_1w.exe

burada buldum fakat dosya isimleri farklı olduğu için sanırım görmüyor. Ne yaptıysam SSL sürümünü göremedim zaten diğer dosyaları silersem ssl bulunamadı veriyor,
SSL sürümünü istediğimde de diğer eski olan dosya sürümleri geliyor. 

Postman ile standart delphini WebHook sistemine bir post gönderdiğimde HTTP olursa sorun yok HTTPS olan post işlemlerinde eğer 
Authorization eklersem mesela token barear işte bu soruna neden oluyor hiçbir şekilde sisteme hata düşmüyor , 
yaptığım araştırmalarda SSL ile ilgili olabileiceğini düşündüm ama ne yaptıysam bir çözüme de ulaşamadım. 


Sizden ricam ssl dosyalarını    https://indy.fulgan.com/SSL/  buradan indiriyorum ama burada yeni sürümler yok , diğer tarafdan indirdiğim sürümleri de tanıtamıyorum. Bu konuda bilgisi olan arkadaşlardan yardım rica ediyorum.

Delphi exe'niz 32 bit ise 32 bit DLL leri kullanmanız gerekir. Buna dikkat ediyor musunuz?
WWW
Cevapla
#3
(04-11-2025, Saat: 21:06)csunguray Adlı Kullanıcıdan Alıntı:
(04-11-2025, Saat: 17:35)Bay_Y Adlı Kullanıcıdan Alıntı: Merhabalar ; 

Delphi 10.2 sürümünü kullanıyorum

Bu sürümde bulabildiğim SLL sürümü OpenSLL v1.0.2u 
dosya isimleri : libeay32.dll , ssleay32.dll    

daha yeni sürümlerini 

https://slproweb.com/download/Win32OpenSSL-1_1_1w.exe

burada buldum fakat dosya isimleri farklı olduğu için sanırım görmüyor. Ne yaptıysam SSL sürümünü göremedim zaten diğer dosyaları silersem ssl bulunamadı veriyor,
SSL sürümünü istediğimde de diğer eski olan dosya sürümleri geliyor. 

Postman ile standart delphini WebHook sistemine bir post gönderdiğimde HTTP olursa sorun yok HTTPS olan post işlemlerinde eğer 
Authorization eklersem mesela token barear işte bu soruna neden oluyor hiçbir şekilde sisteme hata düşmüyor , 
yaptığım araştırmalarda SSL ile ilgili olabileiceğini düşündüm ama ne yaptıysam bir çözüme de ulaşamadım. 


Sizden ricam ssl dosyalarını    https://indy.fulgan.com/SSL/  buradan indiriyorum ama burada yeni sürümler yok , diğer tarafdan indirdiğim sürümleri de tanıtamıyorum. Bu konuda bilgisi olan arkadaşlardan yardım rica ediyorum.

Delphi exe'niz 32 bit ise 32 bit DLL leri kullanmanız gerekir. Buna dikkat ediyor musunuz?

Cevap İçin teşekkürler. Evet 32 bit dll ve 64 bit dll her ikisini de denedim lisansım 10.2 ve 10.3 ü desteklediğinden 10.3 de 64 bit i de denemiş bulundum. Ama sanırım farklı bir sorun var. Henüz ne olduğunu anlayamadım.Eski dll ler çalışıyor fakat daha yeni sürümleri görmüyor daha doğrusu gösteremedim.
Cevapla
#4
3. rd entegrasyonlarla ilgileniyorsanız delphinin ücretiz komponentleri ile pek yol alamazsnız.

10.2 de varmıydı bilmiyorum eğer var ise RestDebuger kullanabilirsin. veya hiç uğraşma Clever komponentleri al kullan.

https://www.clevercomponents.com/product...m_homepage
WWW
Cevapla
#5
Delphi lisansım 10.3 ve 10.4.2 upgrade haliyle var.

Indy kullanmayı uzun süredir bıraktım Nethttpclient kullanıyorum ki bu da Delphi native bileşeni.

Konuya dönersek, temin ettiğiniz dll'lerin çalışmama sebebi dll uyumsuzluğu değil de bağlantı kurmak istediğiniz site/adresin tls / ssl sürümü gerkliliğini karşılayacak IOHandler ayarları hatalı olması mümkün mü? diye düşünüyorum.

Bir diğer ihtimal ise (hani dll dosya değişse de eski sürümü görüyor dediğiniz için sorucam) kodlarınız içinde dll path seçimi yapmış ve bu path dosya exe konumu değil de başka bir yere bakıyorsa...

Size önerim boş bir proje kurun ve bu projede basit https:// kaynaklı bir dosya linkini indiren kod yazın.
Orada bu dosyaya erişim yapabildiğiniz ssl DLL'leri hangisi ise size uyumlu olan odur. Bu sayede siteye özgü sll ayar gereksinimi ihtimalini bertaraf ederek test etmiş olursunuz. 

Boş projede kullandığınız kodu da -eğer başarısız olduysa- burada serbestçe paylaşırsınız biz de size yere basan cevaplar verecek test edilmiş çözümler ile döneriz yardımcı oluruz.

Başarılar.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#6
Dilersen aşağıdaki örnek kodu test için kullanmak isteyebilirsin.

Boş bir VLC proje açıp, forma bir tane button bir tane de TImage resim nesnesi ekle.


Uses
  IdHttp, IdSSLOpenSSL, IdSSLOpenSSLHeaders,
  Vcl.Imaging.pngimage;

function IdHttpSSLDownload(aBitmap: TBitmap): boolean;
Const
  LCaptchaURL = 'https://gss.sgk.gov.tr/Optik_Firma2_Web/CaptchaServlet';
var
  LIdHttp                : TIdHttp;
  LIdSSLIOHandlerSocket  : TIdSSLIOHandlerSocketOpenSSL;
  LMS                    : TMemoryStream;
  LCaptchaImage          : TPNGImage;
  LSSLPath               : string;
  LSSLLibFile            : string;
begin
  result := false;

  // Bu örnekte SLL DLL Path EXE klasörüdür
  LSSLPath    := ExtractFilePath(ParamStr(0));
  LSSLLibFile := LSSLPath + PathDelim + 'ssleay32.dll';

  if NOT FileExists( LSSLLibFile )
    then
      begin
        Showmessage( 'ssleay32.dll dosyası eksik...' + sLineBreak + LSSLLibFile);
        exit;
      end;

//Dilediğiniz başka bir klasörü SSL DLL path olarak bu şekilde belirtebilirsiniz.
  IdOpenSSLSetLibPath( LSSLPath );

  LCaptchaImage         := TPngImage.Create;

  LIdHttp               := TIdHttp.Create(nil);
  LIdSSLIOHandlerSocket := TIdSSLIOHandlerSocketOpenSSL.create(nil);
  LMS                   := TMemoryStream.Create;
  try
    with LIdSSLIOHandlerSocket as TIdSSLIOHandlerSocketOpenSSL do
    begin
      PassThrough             := True;
      SSLOptions.Method       := sslvSSLv23;
      SSLOptions.SSLVersions  := [sslvTLSv1_2, sslvTLSv1_1, sslvTLSv1];
    end;

    LIdHttp.IOHandler            := LIdSSLIOHandlerSocket;
    LIdHttp.HandleRedirects      := true;
    LIdHttp.Request.UserAgent    := 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36';

    try
      LIdHttp.Get( LCaptchaURL, nil ); // cookies oluşsun diye boş çağrı..
      LIdHttp.Get( LCaptchaURL, LMS ); // asıl download çağrısı
    except on e:Exception do
      begin
        Showmessage( 'HATA :  '+ e.Message );
        exit;
      end;
    end;

    LMS.Position := 0;
    LCaptchaImage.LoadFromStream( LMS );

 // Web'den Captcha Image geldi..
    aBitmap.Assign(LCaptchaImage);

    result := true;
  finally
    LCaptchaImage.Free;
    LIdHttp.Free;
    LIdSSLIOHandlerSocket.Free;
    LMS.Free;
  end;
end;


kullanımı 

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  if IdHttpSSLDownload( Image1.Picture.Bitmap )
    then
      showmessage('OK')
    else
      showmessage('FAIL');
end;


Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#7
Yorumlar için öncelikle çok teşekkür ediyorum. Sanırım sorunum indy TLS sürüm desteğinin olmaması birçok deneme yaptım ve sanırım TLS 1.3 gerekiyor ama Indy ve Delphi 10.2 veya 10.3 de en fazla TLS 1.2 destekleniyor. Uzun bir süre bakamamıştım ama tekrar bakıp net bir bilgi ile dönmeye çalışacağım. Tekrar teşekkürler.
Cevapla
#8
(04-11-2025, Saat: 17:35)Bay_Y Adlı Kullanıcıdan Alıntı: Merhabalar ; 

Delphi 10.2 sürümünü kullanıyorum

Bu sürümde bulabildiğim SLL sürümü OpenSLL v1.0.2u 
dosya isimleri : libeay32.dll , ssleay32.dll    

daha yeni sürümlerini 

https://slproweb.com/download/Win32OpenSSL-1_1_1w.exe

burada buldum fakat dosya isimleri farklı olduğu için sanırım görmüyor. Ne yaptıysam SSL sürümünü göremedim zaten diğer dosyaları silersem ssl bulunamadı veriyor,
SSL sürümünü istediğimde de diğer eski olan dosya sürümleri geliyor. 

Postman ile standart delphini WebHook sistemine bir post gönderdiğimde HTTP olursa sorun yok HTTPS olan post işlemlerinde eğer 
Authorization eklersem mesela token barear işte bu soruna neden oluyor hiçbir şekilde sisteme hata düşmüyor , 
yaptığım araştırmalarda SSL ile ilgili olabileiceğini düşündüm ama ne yaptıysam bir çözüme de ulaşamadım. 


Sizden ricam ssl dosyalarını    https://indy.fulgan.com/SSL/  buradan indiriyorum ama burada yeni sürümler yok , diğer tarafdan indirdiğim sürümleri de tanıtamıyorum. Bu konuda bilgisi olan arkadaşlardan yardım rica ediyorum.

Hemen hemen aynı sorunla çok uzun zaman uğraşmıştım. önce dll dosyalardan zannetmiştim ama benim sorunun dll dosyaları program exe nin olduğu klasörde dll adlı klasörde tutmamdan kaynaklı çıktı.  Indy default olarak önce exe nin olduğu klasöre sonra windows\system klasörüne bakıyor  dll klasöründeki  dosyalar doğru olsa bile  " could not load SSL library "  hatası veriyordu çok emek harcamıştım sonuç olarak ekte gönderdiğim dll dosyaları exe nin olduğu klasöre  koy  kontrol et windows\system veya path ta tanımlı bir yerde başka yerde   ssleay32.dll  ve libeay32.dll  varsa sil. delphi 10.2 ve delphi 12.3 de denenmiştir sorunsuz çalışmakta.  kendi sectiğin bir klasörde olacak ise   Formun oncreate bölüme   SetDllDirectory(PChar(ExtractFilePath(ParamStr(0)) + 'dll'));  ekle "dll" yazan yere kendi klasör adını yaz.
önemli benim ekledim dll dosyalar sadece 32 bit bilginiz olsun ihtiyacın olursa @mrmarman  beyin yardımları ile hazırladığım mail gönderme fonksiyonunu paylaşabilir.


Ek Dosyalar
.zip   Dll.zip (Dosya Boyutu: 672,87 KB / İndirme Sayısı: 10)
"…De ki: "Hiç bilenlerle bilmeyenler bir olur mu? Şüphesiz, temiz akıl sahipleri öğüt alıp-düşünürler" (Zümer Suresi, 9)
Cevapla
#9
(13-12-2025, Saat: 16:35)cinarbil Adlı Kullanıcıdan Alıntı:
(04-11-2025, Saat: 17:35)Bay_Y Adlı Kullanıcıdan Alıntı: Merhabalar ; 

Delphi 10.2 sürümünü kullanıyorum

Bu sürümde bulabildiğim SLL sürümü OpenSLL v1.0.2u 
dosya isimleri : libeay32.dll , ssleay32.dll    

daha yeni sürümlerini 

https://slproweb.com/download/Win32OpenSSL-1_1_1w.exe

burada buldum fakat dosya isimleri farklı olduğu için sanırım görmüyor. Ne yaptıysam SSL sürümünü göremedim zaten diğer dosyaları silersem ssl bulunamadı veriyor,
SSL sürümünü istediğimde de diğer eski olan dosya sürümleri geliyor. 

Postman ile standart delphini WebHook sistemine bir post gönderdiğimde HTTP olursa sorun yok HTTPS olan post işlemlerinde eğer 
Authorization eklersem mesela token barear işte bu soruna neden oluyor hiçbir şekilde sisteme hata düşmüyor , 
yaptığım araştırmalarda SSL ile ilgili olabileiceğini düşündüm ama ne yaptıysam bir çözüme de ulaşamadım. 


Sizden ricam ssl dosyalarını    https://indy.fulgan.com/SSL/  buradan indiriyorum ama burada yeni sürümler yok , diğer tarafdan indirdiğim sürümleri de tanıtamıyorum. Bu konuda bilgisi olan arkadaşlardan yardım rica ediyorum.

Hemen hemen aynı sorunla çok uzun zaman uğraşmıştım. önce dll dosyalardan zannetmiştim ama benim sorunun dll dosyaları program exe nin olduğu klasörde dll adlı klasörde tutmamdan kaynaklı çıktı.  Indy default olarak önce exe nin olduğu klasöre sonra windows\system klasörüne bakıyor  dll klasöründeki  dosyalar doğru olsa bile  " could not load SSL library "  hatası veriyordu çok emek harcamıştım sonuç olarak ekte gönderdiğim dll dosyaları exe nin olduğu klasöre  koy  kontrol et windows\system veya path ta tanımlı bir yerde başka yerde   ssleay32.dll  ve libeay32.dll  varsa sil. delphi 10.2 ve delphi 12.3 de denenmiştir sorunsuz çalışmakta.  kendi sectiğin bir klasörde olacak ise   Formun oncreate bölüme   SetDllDirectory(PChar(ExtractFilePath(ParamStr(0)) + 'dll'));  ekle "dll" yazan yere kendi klasör adını yaz.
önemli benim ekledim dll dosyalar sadece 32 bit bilginiz olsun ihtiyacın olursa @mrmarman  beyin yardımları ile hazırladığım mail gönderme fonksiyonunu paylaşabilir.

Merhabalar ; 

Öncelikle cevabınız için çok teşekkür ediyorum. Gönderdiğiniz dll dosyaları TLS 1.3 desteğine mi sahip doğru mu ? Benim yapmak istediğim mail gönderme değil aslında Yemek sepetinin yeni WebServer uygulamasında gönderdiği authorization doğrulaması ile ilgili sorun yaşıyorum. Gönderdiği JSon verisi authorization dan dolayı diye düşünüyorum bana hiç ulaşmıyor. Gönderdiğiniz DLL dosyaları ile de deneyceğim. Tekrar teşekkürler.
Cevapla
#10
(15-12-2025, Saat: 11:12)Bay_Y Adlı Kullanıcıdan Alıntı:
(13-12-2025, Saat: 16:35)cinarbil Adlı Kullanıcıdan Alıntı: Hemen hemen aynı sorunla çok uzun zaman uğraşmıştım. önce dll dosyalardan zannetmiştim ama benim sorunun dll dosyaları program exe nin olduğu klasörde dll adlı klasörde tutmamdan kaynaklı çıktı.  Indy default olarak önce exe nin olduğu klasöre sonra windows\system klasörüne bakıyor  dll klasöründeki  dosyalar doğru olsa bile  " could not load SSL library "  hatası veriyordu çok emek harcamıştım sonuç olarak ekte gönderdiğim dll dosyaları exe nin olduğu klasöre  koy  kontrol et windows\system veya path ta tanımlı bir yerde başka yerde   ssleay32.dll  ve libeay32.dll  varsa sil. delphi 10.2 ve delphi 12.3 de denenmiştir sorunsuz çalışmakta.  kendi sectiğin bir klasörde olacak ise   Formun oncreate bölüme   SetDllDirectory(PChar(ExtractFilePath(ParamStr(0)) + 'dll'));  ekle "dll" yazan yere kendi klasör adını yaz.
önemli benim ekledim dll dosyalar sadece 32 bit bilginiz olsun ihtiyacın olursa @mrmarman  beyin yardımları ile hazırladığım mail gönderme fonksiyonunu paylaşabilir.

Merhabalar ; 

Öncelikle cevabınız için çok teşekkür ediyorum. Gönderdiğiniz dll dosyaları TLS 1.3 desteğine mi sahip doğru mu ? Benim yapmak istediğim mail gönderme değil aslında Yemek sepetinin yeni WebServer uygulamasında gönderdiği authorization doğrulaması ile ilgili sorun yaşıyorum. Gönderdiği JSon verisi authorization dan dolayı diye düşünüyorum bana hiç ulaşmıyor. Gönderdiğiniz DLL dosyaları ile de deneyceğim. Tekrar teşekkürler.

Konu dışı olacak ama kusura bakmayın;
Yemek sepeti bu sektörde SOAP ta kalan tek markaydı. REST'e geçti mi?
Begin : = end / 2;
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Button Renk sorunu CesuR 3 303 21-05-2026, Saat: 04:29
Son Yorum: emailx45
  yapay zeka delphi kl007 9 686 26-02-2026, Saat: 09:12
Son Yorum: mrmarman
  Win 11 ve Delphi 7 Minimize sorunu. enigma 7 565 11-02-2026, Saat: 10:27
Son Yorum: RAD Coder
Question Delphi formunu nasıl otomatik tam ekran yapabilirim ? erdemklt0 2 388 23-01-2026, Saat: 10:02
Son Yorum: csunguray
  Delphi ile SQL server bağlantı hatası yakalama Under 20 2.044 21-11-2025, Saat: 15:24
Son Yorum: mrmarman



Konuyu Okuyanlar: