vložil Radek Červinka
5. července 2022 13:15
Delphi od určité verze (Delphi XE2?) podporuje nastavení verze pro každý TARGET samostatně. Chápu, že to může mít někdy přínosné, ale osobně s tím bojuji, koncept All platforms mi moc nefunguje a spíše mne to otravuje. Takže jsem začal hledat nějaké řešení a výsledkem je používání DDevExtension, které napsal autor FixPacku a které nedávno uvolnil jako open source a psal jsem o tom i zde na serveru.

Více...
vložil Radek Červinka
27. června 2022 23:58
Dlouho jsem nepsal o nějaké fintě pro ladění, tak jsem si vzpomněl na takové dvě drobnosti:
Zobrazení dat z memory stream
Samozřejmě se nejedná jen o memory stream jelikož se jedná o populární bázovou třídu tak to použijeme častěji. Pokud jste v místě, kde máte parametr TStream, není nic jednoduššího než přes volání .ClassName zjistit zda se jedná o potomka TMemoryStreamu, objekt přetypovat a použít následující trik (napadl mne, když jsem ladil volání SOAP a pořád jsem logoval stream do souboru abych ho zkontroloval).
Více...
vložil Radek Červinka
6. dubna 2022 10:31
Při představení Delphi 11 jsem prakticky vynechal přidání TWinControl.LockDrawing a TWinControl.UnlockDrawing, což ovlivňuje provádění windows zprávy WM_SETREDRAW.
Více...
vložil Radek Červinka
30. března 2022 08:48
Pokud potřebujete používat SOAP, tj. web services, má Delphi léta pro to podporu přes THTTPRIO. Od verze 10.3 RIO je jako komunikační vrstva použit THTTPClient, což je ve většině případů optimální řešení, protože používá preferované řešení operačního systému (např. na Windows SChannel).
Ale: mohou nastat případy, kdy dané řešení nevyhovuje, a pak je tu možnost relativně jednoduše nahradit komunikaci za vlastní (v mém případě to bylo nutnost rychlé změny self signed klientských certifikátů na různých OS). Zvolil jsem synapse. Takže jdeme na to, není to nic hrozného.
Více...
vložil Radek Červinka
16. března 2022 00:43
Je dostupná aktualizace Delphi 11.1 . Aktualizace je binárně kompatibilní s D11, tj. dcu a komponenty z D11 se dají použít bez rekompilace.

Musím říct, že jsem se na okamžik kdy bude nový update oficiálně dostupný těšil z prostého důvodu, že jeho testovací verze používám delší dobu a vím na co se těšit.
Verze Delphi 11.1 se soustředí na kvalitu a "štelování" toho co bylo zásadní pro Delphi 11, tj. např. LSP, High DPI IDE, Welcome page bez exploreru, ladění atd.
Platformy: oficiální podpora Windows 11, macOS 12 Monterey, iOS 15 a Android 12
Zkusím některé věci co mne zajímají vyzvihnout. Ale nejdříve nezbytnosti:
Více...
vložil Radek Červinka
18. ledna 2022 18:54
Kolega si mi dnes stěžoval, že ho štve chování IDE ve stromu projektů, kdy při dvojkliku mezi projekty, nebo i na unitě dojde k zabalení nebo rozbalení uzlu. Jelikož je to určitě varianta VirtualTreeView, že by stačilo vypustit z TreeOptions.MiscOptions hodnotu toToggleOnDblClick.
Vzpomněl jsem si, že jsem dříve ve starších Delphi použival háček, kdy jsem natvrdo změnil velikost fontu v ObjectInspektoru protože se zvětšilo rozlišení a zhoršil se zrak. Mimochodem Quick Delphi plugin to change font size in the Object Inspector (vytvořte si balíček a přidejte do něj tu jednotku).
Pokud se zavede balíček, volá se procedure Register a lze procházet objekty IDE a pokud znáte co chcete změnit, tak máte šanci.
Otazkou tedy zůstává jen jak najít to co je třeba změnit. A zde přichází ke slovu nástroje na procházení objektů IDE, třeba IDE Explorer (ale jsou i další).

IDE explorer - hlavní okno je AppBuilder
Více...
vložil Radek Červinka
13. ledna 2022 02:48
Recykluji starší článek (2016) a ukáži jak za pomoci Delphi a pár minut vytvoříte jednoduchou mobilní aplikaci pro Android s tím, že pokud máte Apple tak ji jen přeložíte pro iOS.
Veškerý vývoj bude probíhat na Windows jako Win32 aplikace a jen výsledek upravíme na zařízení. Naše aplikace umožní zadat IČO a z webu si dotáhne informace o firmě ve formě JSON, ten zpracujeme a zobrazíme.
Co budeme potřebovat
Více...
vložil Radek Červinka
29. prosince 2021 18:23
Upozornění: článek obsahuje různé věci obecně pro vývoj na Android, ne jen ohledně synapse.
Už je to nějakou dobu, kdy jsem portoval Synapsi pro iOS a Linux (2014). V té době mobilní kompilátory nemají AnsiString a proto jsem tam trošku kouzlil a jen část kódu (speciálně hlavně ssPosix.inc, což je implementace soketů společná pro všechny Embarcadero kompilátory mimo windows) se dostala do oficiálního SVN. I to stačilo pro desktopové kompilátory (Mac, Linux). Ale od té doby je už nějakou dobu Android součástí i Professional nebo Community verze, takže zde bude i více článků o něm, protože ho najdete v čemkoliv.
Více...
vložil Radek Červinka
30. listopadu 2021 17:57
Podpora TLS 1.3 je čím dál zásadnější věc. Minule zde byla Synapse a OpenSSL 1.1.1 s podporou TLS 1.3, předtím Indy OpenSSL 1.1.1 IO Handler s podporou TLS 1.3 (stále experimentální) a nyní jsem narazil na Indy SChannel IOHandler (i pro TLS 1.3).
Více...
vložil Radek Červinka
14. října 2021 20:47
Je to už neuvěřitelných 7 let, kdy jsem se zmínil o Delphi MVC frameworku a musím říct, že když jsem tehdy říkal, že mi přijde jako nejprogresivnější tak jsem nelhal.
Od té doby zrobustněl, bylo přidáno spousta funkcí (jako podpora swaggeru, JWT autentizaci, JSON-RPC 2.0, Cors a desítky dalších), nebudu to tady vyjmenovávat, ale přímo odkáži na github.com/danieleteti/delphimvcframework. Součástí archívu je spousta dem. Výhodou je taky kompletní zdrojový kód.
Cílem dnešního článku je ukázat jak jednoduše vytvoříte základní službu (celý REST full je podobně jednoduchý) odpovídající na vaše pořadavky.
Více...
vložil Radek Červinka
14. září 2021 00:27
Embarcadero uvolnilo novou řádovou verzi RAD Studio 11 Alexandria. Po delším čase se změnilo číslování i v reakci na Windows 11 a za mne správné rozhodnutí.
Na úvod Wiki What's New, Release Notes a Feature Matrix.
K instalaci: instálator je částečně paralelizován kde to jde, takže je to trošku rychlejší. A druhá věc, že offline instalace je možná i přes gof soubor, který přihrajete k setupu - viz. release notes. A poslední: při instalaci je konečně zvolit adresář pro Catalog repository, takže to nemusí být na C:

Více...
c2f8c5aa-658f-4e0a-886a-49021886b3b5|16|4.8
Tagy: D11
Delphi
vložil Radek Červinka
9. srpna 2021 22:46
DEC je zkratkou pro Delphi Encryption Compendium, což je knihovna Open Source šifrovacích, hashovacích, CRC a dalších kódů, primárně kompatibilní s unicode Delphi (Delphi 2009 - Delphi 10.4.2 Sydney). Je udržovaná, podporuje moderní šifry a hashe a je kvalitně napsaná.
Rozsáhlý seznam podporovaných šifer, hash a dalšího je na stránkách projektu.
github.com/MHumm/DelphiEncryptionCompendium
vložil Radek Červinka
27. května 2021 19:06
Aktualizace:
Hlavní autor synapse publikoval oficiální nový plugin pro OpenSSL 1.1.1 s názvem ssl_openssl11, tj. nyní je podpora součástí zdrojáků oficiálně.
Synapse je na sourceforge.net/p/synalist/code/HEAD/tree/trunk/.
Původní:
Po minulém příspěvku ohledně TLS a OpenSSL 1.1.1 v Indy se mi ozval jeden člověk na fóru se svojí podpora OpenSSL 1.1.1 v Synapse, takže rád předávám: základní podpora pro TLS a OpenSSL 1.1.1 v knihovně Synapse update.pepak.net/far/filters/src, pokud se někdy objeví i v trunku synapse, tak link opravím.
4ff33c63-b043-4066-9144-dd3295dfa6cc|12|4.7
Tagy: synapse
vložil Radek Červinka
11. května 2021 00:49
Lehce jsem to nakousl při uvedení verze 10.4.2, ale nechtěl bych aby to zapadlo.

A kromě oficiálních typů to funguje i pro RawByteString.
552b8fe9-87fa-4c6d-9d4a-4438bf9a16e6|8|5.0
Tagy:
vložil Radek Červinka
9. května 2021 23:58
Embarcadero uvolnilo tři malé patche řešící speciální problémy, z nichž nejzávažnější je podle mne řešení chyby F2046 out of memory RSP-32768, která u některých velkých projektů mohla nastat.
Každý patch by měl být dostupný přes welcome page nebo přes my.embarcadero.com.
Detaily na RAD Studio 10.4.2 General Patch and Delphi Compiler Patch
Jako ověření můžete zkontrolovat verzi "c:\Program Files (x86)\Embarcadero\Studio\21.0\bin\dcc32.exe", po aplikaci patche by měla být 27.0.41310.5003 nebo novější. Kontrolu proveďte zvláště pokud máte instalován GExpert, který někdy způsobuje problémy s instalací.
877c0751-922d-4b4c-9a3c-9eea7579639e|4|5.0
Tagy:
Aktualizace