sgcCustomIndy: sgcWebSockets Core için Özel Indy Kitaplığı
sgcWebSockets Core için eklenti Delphi 7'den 13'e & C++ Builder

sgcCustomIndy: sgcWebSockets Core için Özel Indy Kitaplığı

Indy, sgcWebSockets'in bazı bileşenleri için temel olarak kullandığı açık kaynaklı istemci ve sunucu iletişim kitaplığıdır. Standart Indy kitaplığı ALPN'yi desteklemez ve OpenSSL 1.1.1 veya 3.x üzerinden TLS 1.3'ü desteklemez; bu yüzden sgcWebSockets Enterprise, bunları destekleyen özel bir Indy derlemesi ile gelir. sgcCustomIndy, aynı özel derlemeyi sgcWebSockets Core'a taşır; aksi halde bunu elde etmek Enterprise sürümüne geçmek anlamına gelirdi.

Tam kaynak kodu
Kaldırılacak hiçbir şey yok
Yan yana kurulu Tek IDE Özel birimler bir sgc öneki taşır, bu yüzden her iki kitaplık da aynı IDE'de yaşar
Standart Indy IdGlobal.pas
Özel Indy sgcIdGlobal.pas
0 Kaldırılacak Indy kitaplığı IDE'nizde zaten olan Indy kurulu kalır
0 Delphi 7'de Indy 10 kurulumu Kitaplık paketle birlikte gelir
3 Standart Indy'nin eksik olduğu yetenek ALPN, OpenSSL 1.1.1 ve 3.x üzerinden TLS 1.3, statik bağlama
1 Statik OpenSSL için birim uses cümlesinde sgcIdSSLOpenSSL_Static
2 Statik bağlama hedefi Windows 32 bit ve 64 bit, Delphi XE2 veya daha yeni

Önce Bilmeye Değer İki Şey

Bu paket kimin için ve kimde zaten var. İki yanıt da kısa.

Ayrı bir sipariş değil, bir eklentidir

sgcCustomIndy, bir sgcWebSockets Core lisansına eklenir. Tek başına sipariş edilmez: bir Core siparişi içinde ilk önerilen eklenti olarak görünür; bu, sgcAI, sgcMQ, sgcSocial, sgcAuth ve sgcHTTP paketlerinin izlediği aynı yoldur.

Tam kaynak kodu lisansla birlikte gelir, bu yüzden Indy birimleri, kitaplığın geri kalanı gibi tam olarak kendi projenizde derlenir ve adım adım izlenir.

Önce kontrol edin

Enterprise ve All-Access zaten içerir

Özel Indy kitaplığı, sgcVer.inc içindeki SGC_CUSTOM_INDY derleyici tanımı aracılığıyla varsayılan olarak etkinleştirildiği sgcWebSockets Enterprise'ın ve eSeGeCe All-Access'in bir parçasıdır. Bunlardan birine sahipseniz, bu sayfadaki her şeye zaten sahipsinizdir ve eklenecek bir şey yoktur.

Standard ve Professional sürümleri standart Indy kitaplığını kullanır. Bu paketi bir sürüm yükseltmesine karşı tartıyorsanız hangi sürüme ihtiyacınız olduğuna bakın.

Standart Indy Kitaplığının Yapamadığı Üç Şey

Aşağıdaki her madde, üstünde oturan bir bileşenin değil, Indy katmanının kendisinin bir yeteneğidir. Indy kitaplığını değiştirmenin bunları açmasının nedeni de budur.

ALPNProtokol müzakeresi

HTTP/2'nin üzerine kurulu olduğu uzantı

HTTP/2, TLS el sıkışması sırasında müzakere edilir: istemci konuşabildiği protokolleri duyurur ve sunucu birini seçer. Bu müzakere, Application-Layer Protocol Negotiation'dır ve bir HTTP bileşeninin ulaşabildiği her şeyin altında, TLS katmanının içinde gerçekleşir. Standart Indy kitaplığı bunu desteklemez; bu yüzden ALPN'yi ve onunla birlikte HTTP/2'yi kullanılabilir kılan, özel Indy kitaplığıdır.

ALPN HTTP/2
TLS 1.3OpenSSL 1.1.1 ve 3.x

Sonunda erişilebilen modern OpenSSL dalları

TLS 1.3, OpenSSL 1.1.1 veya OpenSSL 3.0.0 gerektirir; standart Indy kitaplığı bu dalları desteklemez. Özel Indy kitaplığı destekler, bu yüzden üzerine kurulu bir istemci ya da sunucu, bunu gerektiren uç noktalara karşı TLS 1.3'ü müzakere eder; eski OpenSSL API'sinin sunduğuyla sınırlı kalmak yerine.

TLS 1.3 OpenSSL 1.1.1 OpenSSL 3.x
Statik OpenSSLWindows, Delphi XE2 veya daha yeni

Yürütülebilir dosyanın içinde OpenSSL

OpenSSL, çalışma zamanında libcrypto ve libssl DLL'lerinden yüklenmek yerine doğrudan uygulamanıza bağlanabilir; böylece bir TLS uygulaması tek bir dosya olarak dağıtılır. Yalnızca özel Indy kitaplığı kullanımda olduğunda devreye girer, ki bunu sağlayan da bu pakettir. Kapsam, Delphi XE2 veya daha yeni sürümlerde Windows 32 bit ve 64 bit'tir; ayrıntılar daha aşağıda.

sgcIdSSLOpenSSL_Static Yalnızca Windows Delphi XE2+

Zaten Sahip Olduğunuz Indy'nin Yanında Durur

Bir IDE'deki Indy kitaplığını değiştirmek, kimsenin yapmak istemediği kısımdır; bu yüzden bu paket bunu istemez. Özel Indy dosyaları bir sgc öneki ile yeniden adlandırılır, IdGlobal sgcIdGlobal olur ve her iki sürüm de sorunsuzca bir arada var olur.

Standart Indy, IDE'nizde zaten varÖzel Indy, bu paketle eklenirBunun anlamı
IdGlobal.passgcIdGlobal.pasFarklı birim adları, bu yüzden arama yolunda hiçbir şey çakışmaz
IdTCPClient.passgcIdTCPClient.pasHer iki kitaplık da aynı IDE'de ve aynı projede derlenir
IdSSLOpenSSL.passgcIdSSLOpenSSL.pasMevcut TLS kodunuz zaten kullandığı birimi kullanmaya devam eder
Kaldırılacak hiçbir şey yok

IDE'nizde zaten hangi Indy varsa kurulu ve kayıtlı kalmaya devam eder. Bir paketi kaldırdığınız, sonra geri yüklediğiniz ya da iki IDE profili tuttuğunuz bir adım yoktur.

Mevcut projeler dokunulmadan kalır

Standart Indy kitaplığına karşı zaten oluşturduğunuz her şey, birebir aynı birimler olarak ona karşı derlenmeye devam eder. Özel derleme ek bir şeydir, bir değiştirme ya da IDE'nize uygulanan bir yükseltme değildir.

Tek bir derleyici tanımı

Özel Indy kitaplığının kullanımı, kaynak klasöründeki sgcVer.inc içinde SGC_CUSTOM_INDY ile kontrol edilir. Tek bir tanımdır, bu yüzden özel derlemeyi yeniden kapatmak tek satırlık bir değişikliktir.

Her zamanki gibi tam kaynak kodu

Yeniden adlandırılan Indy birimleri, lisansla birlikte kaynak kodu olarak gelir; bu yüzden proje ayarlarınızla derlenir ve kitaplığın geri kalanı gibi hata ayıklayıcınızda adım adım izlenirler.

Ayrı Bir Indy 10 Kurulumu Yok

Delphi 7, daha eski bir Indy ile gelir. Orada sgcWebSockets kullanmak, aksi halde önce Indy 10'u IDE'ye kendiniz kurmanız anlamına gelirdi; bu da birçok kişiyi bir satır kod yazmadan önce durduran adımdır. Özel Indy kitaplığı pakete dahil olarak geldiğinde, bu adım ortadan kalkar.

Önceden ön koşul neydi

Indy 10'u kaynağından edinin, hiçbir zaman onunla gelmemiş bir Delphi 7 IDE'sine kurun, paketleri derletin, ardından geri dönüp sgcWebSockets'e başlayın. Bu, gerçekte yapmak istediğiniz kısımdan önce yapılan, tamamen ayrı bir iştir.

Hâlâ Delphi 7 kodunu sürdüren bir şirket için, bu ön koşul çoğu zaman bir bileşen kitaplığının hiç değerlendirilip değerlendirilmeyeceğine karar veren şeydir.

Bu paketle durum nedir

Özel Indy kitaplığı, her şey gibi aynı kaynak klasöründe, paketle birlikte gelir. Bulunacak bir Indy 10 yoktur, IDE'ye kurulacak bir Indy 10 yoktur ve bileşenlerle eşleştirilmesi gereken bir Indy 10 sürümü yoktur.

Bu yalnızca Indy 10 ön koşuluyla ilgilidir. Statik OpenSSL bağlama, kendi kapsamına sahip ayrı bir özelliktir; Windows ve Delphi XE2 veya daha yeni, bu yüzden Delphi 7'de geçerli değildir.

Tek Birim, Dağıtılacak Tek Dosya

Yapılandırılacak hiçbir şey yoktur. Örneğin ana .dpr içinde, projenizin uses cümlesine sgcIdSSLOpenSSL_Static'i ekleyin; uygulama bir sonraki çalıştırıldığında, hem istemci hem de sunucu bileşenleri için yürütülebilir dosyanın içine bağlanan OpenSSL'yi kullanır.

// Project1.dpr
uses
  sgcIdSSLOpenSSL_Static;

// That is the whole configuration. No compiler directive to enable,
// no OpenSSL API version to choose. Remove the unit again and the
// application goes back to loading the OpenSSL DLLs exactly as before.
Platformlar Bu biçimdeki bir nesne dosyasının bağlanabildiği yerler
Windows 32 bit Windows 64 bit macOS iOS Android
Derleyici Eski sürümler E2045 Bad object file format bildirir
Delphi XE2 ve daha yeni Delphi 7'den XE'ye
Ön koşul Statik bağlama onsuz hiçbir etki yaratmaz
Özel Indy kitaplığı kullanımda SGC_CUSTOM_INDY tanımlı
Bağlanan OpenSSL En son OpenSSL düzeltmelerini yakalamak için zaman zaman güncellenir
OpenSSL 3.5.7

Statik bağlamanın kullanılamadığı bir sürüm veya platformda hiçbir şey bozulmaz. Uygulama, daha önce olduğu gibi OpenSSL DLL'lerini yüklemeye devam eder; bu yüzden aynı kaynak her yerde derlenir.

Her Sürüm Hangi Indy'yi Kullanır

Özel Indy kitaplığı yeni değildir. sgcWebSockets Enterprise'ın üzerine kurulu olduğu şeydir; bu paket ise Core için ona giden yoldur.

Sahip olduğunuzIndy kitaplığıNotlar
sgcWebSockets StandardStandartALPN yok, OpenSSL 1.1.1 veya 3.x üzerinden TLS 1.3 yok
sgcWebSockets ProfessionalStandartALPN yok, OpenSSL 1.1.1 veya 3.x üzerinden TLS 1.3 yok
sgcWebSockets EnterpriseÖzelDahildir, varsayılan olarak etkin
eSeGeCe All-AccessÖzelDahildir, varsayılan olarak etkin
Tek başına sgcWebSockets CoreStandartBu paketin değiştirdiği şey budur
sgcCustomIndy ile sgcWebSockets CoreÖzelEnterprise'ın kullandığı aynı özel derleme

sgcIndy ile aynı şey değil

sgcCustomIndy, mevcut Indy'nizin yanında yaşayan ve sgcWebSockets bileşenleri tarafından kullanılan sgc önekli derlemedir. sgcIndy ise, birimlerin orijinal adları altında kaldığı, IDE'nizdeki Indy'nin yerine kurduğunuz ayrı ve tam Indy paketidir; böylece SMTP ve FTP gibi standart Indy bileşenleri de aynı modern TLS'yi alır. Farklı ürünler, farklı işler.

Bir Core Siparişi Sırasında Eklenir

sgcCustomIndy, tek bir geliştirici için €149 fiyatından başlar. Tüm lisanslar tam kaynak kodunu, 1 yıllık güncellemeleri ve 50% ile 70% arasında bir yenileme indirimi içerir: Tek bir paketi yenilediğinizde 50%, iki pakette 60%, üç veya daha fazla pakette 70% indirim uygulanır. sgcAI, sgcMQ, sgcSocial, sgcCustomIndy, sgcAuth ve sgcHTTP ürünlerinin her biri ayrı bir paket sayılır.

sgcCustomIndy

€149

Single €149, Team €249 ve Site €399 lisansları mevcuttur.

  • sgcWebSockets Enterprise'ın kullandığı özel Indy kitaplığı
  • ALPN ve onunla birlikte HTTP/2
  • OpenSSL 1.1.1 ve 3.x üzerinden TLS 1.3
  • Windows'ta, Delphi XE2 veya daha yeni sürümlerde statik OpenSSL bağlama
  • sgc önekli birimler, bu yüzden kurulu Indy'nize dokunulmaz
  • Delphi 7'de ayrı bir Indy 10 kurulumu yok
  • Tam kaynak kodu
  • 1 yıl güncelleme

Ayrı bir sgcCustomIndy sipariş sayfası yoktur, çünkü bu paket bir siparişe hiçbir zaman başladığınız kalem değildir. sgcWebSockets Core siparişi içinde ilk önerilen eklenti olarak sunulur; bu yüzden sgcAI, sgcMQ veya sgcSocial sipariş ederken tek tıkla eklersiniz ve aynı lisansla gelir. sgcAuth'un WebAuthn desteği ve sgcHTTP'nin HTTP/2 ve gRPC istemcileri her ikisi de buna ihtiyaç duyduğundan, bu iki paketten birini sipariş etmek sgcCustomIndy'yi otomatik olarak sepetinize ekler. Zaten Enterprise veya All-Access üzerinden sahipseniz kaldırabilirsiniz.

Zaten sgcWebSockets Enterprise veya eSeGeCe All-Access üzerinde misiniz? Özel Indy kitaplığı zaten sizindir, bu sürümlerin neyi kapsadığı için sgcWebSockets fiyatlandırmasına bakın.

3,000+Geliştirici
20+Yıl
761+Bileşen
30+API Entegrasyonu
5Platform
30 Günlük Para İade GarantisiMemnun kalmadınız mı? Satın alımdan sonraki 30 gün içinde tam para iadesi talep edin. İade politikasına bakın

Indy Katmanı, Güncellenmiş

ALPN ve dolayısıyla HTTP/2, OpenSSL 1.1.1 ve 3.x üzerinden TLS 1.3, ve Windows'ta yürütülebilir dosyanın içine bağlanan OpenSSL. Hepsi zaten sahip olduğunuz Indy'nin yanında, kaldırılacak hiçbir şey ve Delphi 7'de kurulacak bir Indy 10 olmadan.

eSeGeCe'nin Diğer Ürünleri

sgcCustomIndy'yi diğer Delphi, C++ Builder ve .NET bileşen kitaplıklarımızla eşleştirin.

sgcWebSockets

Kitaplığın tamamı: WebSocket istemcileri ve sunucuları, HTTP/2, IoT, P2P ve yapay zeka bileşenleri. Enterprise, bu özel Indy kitaplığının üzerine kuruludur.

Daha fazla bilgi →

sgcIndy

Orijinal birim adları altındaki tam Indy paketi; SMTP, FTP ve geri kalanının da modern TLS almasını sağlamak üzere IDE'nizin Indy'sinin yerine kurulur.

Daha fazla bilgi →

sgcAI

Yapay zeka, LLM ve MCP bileşenleri. Tek bir sohbet bileşeni OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok ve Mistral'a erişir.

Daha fazla bilgi →

sgcMQ

Yerel MQTT, AMQP 0.9.1, AMQP 1.0, Apache Kafka ve STOMP istemcileri. Bağımsız üründür, sgcWebSockets Core çalışma zamanı dahildir.

Daha fazla bilgi →

sgcSocial

WhatsApp Business Cloud API ve Telegram TDLib istemcileri. Bağımsız üründür, sgcWebSockets Core çalışma zamanı dahildir.

Daha fazla bilgi →

sgcAuth

OAuth2 istemcisi, JWT istemcisi ve WebAuthn desteği. Bağımsız üründür, sgcWebSockets Core çalışma zamanı dahildir.

Daha fazla bilgi →

sgcHTTP

HTTP/2 istemcisi, gRPC istemcisi ve Google Cloud Pub/Sub, Calendar ve FCM istemcileri. Bağımsız üründür, sgcWebSockets Core çalışma zamanı dahildir.

Daha fazla bilgi →

sgcQUIC

Yerel OpenSSL 3.5 QUIC motoru üzerine kurulu QUIC (RFC 9000) ve HTTP/3 (RFC 9114) istemci ve sunucu bileşenleri.

Daha fazla bilgi →

sgcHTML

Delphi, C++ Builder ve .NET için Bootstrap 5 ve htmx ile veriye duyarlı sunucu tarafı HTML/arayüz bileşenleri.

Daha fazla bilgi →

sgcSign

Kurumsal dijital imzalar. 10 anahtar sağlayıcı ve 21 AB ülke profiliyle XAdES, PAdES, CAdES ve ASiC.

Daha fazla bilgi →

sgcOpenAPI

OpenAPI 3.0 ayrıştırıcısı ve SDK üreticisi. Herhangi bir OpenAPI şartnamesini saniyeler içinde güçlü tipli bir Delphi istemcisine dönüştürün.

Daha fazla bilgi →