OpenSSL, çalışma zamanında libcrypto ve libssl DLL dosyalarından yüklenmek yerine, doğrudan uygulamanızın yürütülebilir dosyasının içine bağlanabilir. Bu, TLS kullanan bir uygulamanın herhangi bir OpenSSL DLL'sini dağıtmasına gerek kalmadığı, ihtiyaç duyduğu her şeyin zaten .exe dosyasının içinde bulunduğu anlamına gelir.
Tek bir dosya dağıtmak istediğinizde, hedef makinede doğru OpenSSL DLL'sinin kurulu olduğunu garanti edemediğinizde veya dağıtım sürecinizin yürütülebilir dosyanın yanında ek dosyalara izin vermediği durumlarda bu özellik faydalıdır.
Ayarlamanız gereken hiçbir şey yoktur. Yalnızca projenizin uses bölümüne sgcIdSSLOpenSSL_Static birimini ekleyin, örneğin ana .dpr dosyasında:
uses
sgcIdSSLOpenSSL_Static;
Hepsi bu kadar. Etkinleştirilecek bir derleyici yönergesi veya seçilecek bir OpenSSL API sürümü yoktur; uygulamanız bir sonraki çalıştırıldığında, hem istemci hem de sunucu bileşenleri için yürütülebilir dosyaya bağlanmış olan OpenSSL kütüphanesini kullanmaya başlar. Birimi uses bölümünden kaldırırsanız, uygulamanız tam olarak eskisi gibi OpenSSL DLL'lerini yüklemeye geri döner.
Şu anda bağlanan OpenSSL sürümü 3.5.7'dir. Bu sürüm, en son OpenSSL düzeltmelerini içerecek şekilde zaman zaman güncellenir, böylece OpenSSL sürümlerini kendiniz takip etmenize veya dağıtmanıza gerek kalmaz.
E2045 Bad object file format
Bu, XE2'den daha eski bir Delphi sürümüyle derleme yaptığınız anlamına gelir. Statik bağlama Delphi XE2 veya daha yenisini gerektirir; sgcIdSSLOpenSSL_Static birimini uses bölümünden kaldırın, uygulamanız OpenSSL DLL'leriyle çalışmaya devam edecektir.