Delphi.cz

Český portál Delphi

Rozcestník: Jste tu poprvé? Pro začátečníky jsem napsal úvod do programování v Delphi. Můžete si přečíst informace ohledně změn v jednotlivých verzích Delphi a případně mezi jednotlivými edicemi Delphi. Pokud přecházíte ze starších verzí tak řetezce a unicode.
Možná Vás bude zajímat spolupráce databáze a Delphi, nebo se budete rozhodovat mezi různými druhy Delphi projektů.

Navštivte adresář nejpopulárnějších open source Delphi komponent

Platform status - podporované platformy v jednotlivých verzích

Free Delphi Starter Edition download

Potřebujete Delphi školení nebo konzultace na různá témata?

MS uvolnil update, který zablokuje starší verze Delphi

Podle toho co jsem četl se problem týká nejméně Delphi 2007 až Delphi 2010. IDE načítá externí font, což MS zablokoval. Podle všeho se jedná o KB2982791.

Pokud dostanete "Cannot create file C:\Users\Admin\AppData\Local\Temp\EditorLineEnds.ttr", tak se jedná o tento problém.

Řešení jsou dvě: odinstalovat uvedenou opravu, nebo použít IDEFixPack, který od verze 2.7 obsahuje patch, který zakazuje načítání externích fontů - andy.jgknet.de/blog/2014/08/editorlineends-ttr-idefixpack-users-are-not-affected.

via: stackoverflow

Více...

Datum: 2014-08-15 10:30:00 Tagy: Delphi 2007, Delphi 2009, Delphi 2010, fix

Praxe

Něco o exceptions

Koncept výjimek v Delphi je dobře vymyšlen a dokonce jsem kdesi četl, že je částečně patentován, jelikož v době Delphi 1 byl naprosto převratný způsobem zpracování za běhu (nějak to souviselo s efektivním odvíjením zásobníku při výjimce, detaily si nepamatuji a snad se nepletu).

Mimochodem Windows podporují výjimky až od 32bit verzí, tj. Delphi 1, které bylo 16bit mělo výjimky vlastní a až Delphi 2 mapují část výjimek na výjimky Windows.

Od Delphi 1 je základem třída Exception, která byla v Delphi 2009 trochu rozšířena - přece jen je to už pár let. Více...

Datum: 2011-04-10 22:49:00 Tagy: Delphi 2009, RTL, začátečníci, ladeni

Novinky v Delphi

Balloon Hint

Delphi 2009 rozšiřují třídu TControl o několik věcí a mezi nimi i o

property CustomHint: TCustomHint read GetCustomHint write SetCustomHint;
property ParentCustomHint: Boolean read FParentCustomHint write SetParentCustomHint;

V případě speciálních požadavků na tvar okna Hint je možno této možnosti využít, ale je tu i jiná možnost.

Následníkem TCustomHint je totiž i komponenta TBalloonHint (screenshot je z Delphi XE na upravených Windows XP).

TBalloonHint

Více...

Datum: 2011-03-04 20:53:00 Tagy: Delphi 2009, komponenty, VCL, začátečníci

Komponenty Novinky v Delphi

Neoficiální workaround pro Delphi 2007 a 2009 ve Windows 7/64

O problémech debuggeru Delphi 2007 a 2009 ve Windows 7/64 bit a jejich řešení jsem psal.

Delphi 2007 Assertion failure

(viz. předchozí článek, včetně řešení od Embarcadera)

Nyní se na blogu Olaf Monien objevil přímo neoficiální nástroj na patchnutí patřičné DLL. Pro jistotu local copy.

Více...

Datum: 2010-12-21 22:36:00 Tagy: Delphi 2009, Delphi 2007

Podpora

Několik tipů pro debugger - 2 díl

V minulém díle jsem začal ukazovat pár triků pro ladění a dnes je tu pokračování. Více...

Datum: 2010-09-29 23:28:00 Tagy: debugger, ladeni, Delphi 2010, delphi XE, Delphi 2007, Delphi 2009

Praxe

Delayed a Deprecated direktivy

Možná tyto dvě direktivy neznáte - obě dvě jsou totiž relativně nové. Direktiva deprecated byla přidána v Delphi 2009, Direktiva delayed v Delphi 2010. Více...

Datum: 2010-06-28 20:25:00 Tagy: Delphi 2009, Delphi 2010, verze, kompilátor, Object Pascal

Novinky v Delphi

Synchronizace za pomocí System.TMonitor

V Delphi 2009 byla přidána pěkná možnost synchronizace přístupu k objektům. Do RTL, konkrétně system.pas, byl pro synchronizaci přidán záznam TMonitor (podobně je to řešeno v .NET). Více...

Datum: 2010-06-02 22:06:00 Tagy: RTL, Delphi 2009, Delphi 2010, vlakna

Delphi

TMS Smooth Controls Pack ke stažení

Firma TMS Software má ve svém portfoliu moc pěkné komponenty za velmi rozumné ceny. Nyní po dohodě s Embarcadero nabízí registrovaným uživatelům Delphi 2009 nebo Delphi 2010 (popř. RAD Studia nebo C++ Builderu v obou verzích) jeden svůj balík ke stažení - TMS Smooth Controls Pack.

Jedná se o opravdu cool graficky vyvedené ovládací prvky (tlačítka, combo box, slidery, progress bary a vůbec) ve stylu iPhone (MAC OS X), popř. ve stylu nových office (včetně skinů).

progress bar

Na ukázku třeba progress bary v provedení Smooth Controls. Více...

Datum: 2010-03-25 00:16:00 Tagy: Delphi 2009, Delphi 2010, komponenty

Komponenty

Help Update 2 pro Delphi a C++Builder 2010

Je dostupný update 2 pro help Delphi a C++Builder 2010. Pokud si necháte zkontrolovat aktualizace měl by být help dostupný jako automatická aktualizace ke stažení.

Seznam změn a poznámek.

Jinak na docs.embarcadero.com je dostupný help v CHM (a to i pro Delphi 2007, 2009 a samozřejmě 2010).

Více...

Datum: 2010-03-02 22:54:00 Tagy: Delphi 2007, Delphi 2009, Delphi 2010,

Aktualizace

STRINGCHECKS problem a unicode Delphi

Předpokládám, že je to všeobecně známo jelikož se to píše všude, ale přesto. V unicode verzích Delphi (tj. 2009 a 2010) je pro lepší kompatibilitu s C++ Builderem implementována možnost lepší detekce správnosti hodnoty typu string. Rovnou říkám, že se jednalo o přechodné období, protože v budoucích Delphi to již nebude, jak napsal Allen Bauer na svém blogu.

Připomínám, že přechod na unicode je největší skok v historii Delphi, podobné je snad jen Delphi 1 (16 bit) -> Delphi 2 (32 bit).

Ale zpět. Tuto kontrolu klidně můžete vypnout (což už určitě máte) v případě, že používáte jen Delphi a tímto krokem získáte určité malé zrychlení. Více...

Datum: 2010-02-03 23:32:00 Tagy: Delphi 2009, kompilátor

Optimalizace

Použití anonymních metod v Delphi

Naprosto perfektní použití anonymních metod z Delphi 2009+

type
  THelper = class
    class procedure Lock(O: TObject; Proc: TProc); static;
  end;

class procedure THelper.Lock(O: TObject; Proc: TProc);
begin
  TMonitor.Enter(O);
  try
    Proc();
  finally
    TMonitor.Exit(O);
  end;
end;

Použití je pak velmi jednoduché, uvedený kód je chráněn kritickou sekcí:

procedure TMyObject.Process;
begin
  Obj.Lock(Self, procedure
    begin
      //kód chráněn kritickou sekcí
    end);
end;  

Fakt prima.

původní článek

Více...

Datum: 2010-01-29 23:15:00 Tagy: Delphi 2009, anonymni metody

Praxe

Migrace existujících Delphi aplikací na Unicode - PDF

Jelikož se mi stále nechce napsat o problémech s migrací na unicode (je to na dost velký článek), tak aspoň nabídnu další možnost: na blogu caryjensen.blogspot.com je dostupný volně ke stažení mnoha informacemi plný PDF o Delphi a unicode.

Mimochodem již dříve jsem upozornil na Delphi 2009 handbook, no a snad se k tomu někdy prokoušu i já.

Více...

Datum: 2010-01-11 21:11:00 Tagy: Delphi 2009, unicode, Delphi 2010,

Knihy

Delphi 2009 - Anonymní metody

Delphi už dlouho má procedurální typy (tj. typu procedura nebo funkce, v podstatě pointer) a ukazatele na metody ( tj. typ pointer na metodu). To druhé je základem celé VCL - kdykoliv deklarujete třeba OnClick obsluhu jedná se právě o druhý případ. První případ je používaný méně, ale třeba já ho často používám pro různé callback funkce atd.

Anonymní metody rozšiřují stávající stav, kdy místo jména procedury nebo metody prostě napíšete kód. Navíc se v takovém případě mění platnost lokálních proměnných. Více...

Datum: 2010-01-06 00:29:00 Tagy: kompilátor, Delphi 2009, anonymni metody

Jazyk Recenze

Delphi 2009 - změny v kompilátoru a RTL (část 2) - generika

Delphi 2009 přináší několik novinek kompilátoru a RTL z nichž nejzásadnější je podpora Unicode, Generika (generics), anonymní metody a pak zbytek.

Minule byla první část změn v Delphi 2009, nyní přicházejí na řadu generika - generics (dobré číst postupně od Delphi 2007). Více...

Datum: 2009-12-31 01:50:00 Tagy: Delphi 2009, RTL, kompilátor, generics

Jazyk Recenze

Delphi 2009 - změny v kompilátoru a RTL (část 1)

Delphi 2009 přináší několik novinek kompilátoru a RTL z nichž nejzásadnější je podpora Unicode, Generika (generics), anonymní metody a pak zbytek.

Začneme od konce - dnes tedy ten zbytek.

Delphi 2009 je následníkem Delphi 2007 a proto je vhodné začít čtení se shrnutím předchozí verze Delphi 2007. Více...

Datum: 2009-12-31 01:37:00 Tagy: Delphi 2009, RTL, kompilátor, unicode

Recenze

Nástroj na detekci možných problémů při migraci na unicode Delphi 2009+

Existuje nástroj, který proběhne Váš kód a dá celkem přesnou představu kde může být problém při přechodu na unicode.

unicode parser

Program není úplně 100%, ale celkem může napomoci. Testovány jsou konstrukce typu WriteBuffer, ale i práce s pointery (ne všechno je samozřejmě nebezpečné).

Program je dostupný na code central registrovaným uživatelům.

A nezapomeňte: migraci určitě začněte aktualizací komponent - určitě to někdo už udělal za vás. Někdy příště podrobněji.

Více...

Datum: 2009-12-16 19:41:00 Tagy: Delphi 2009, unicode

Praxe

RAD Studio 2009 Debugger hotfix řeší problémy ve Windows 7

Delphi 2009, C++Builder 2009 a RAD Studio 2009 hotfix je dostupný a řeší některé problémy s debuggerem pod Windows 7 (většinou 64 bit verzí).

Hotfix je dostupný na CodeCentral cc.embarcadero.com/item/27476.

Nejdůležitější oprava je výskyt assert při ladění aplikace s více vlákny na 64-bit verzi Windows 7. Text při assert je:

Assertion failure: "(!"SetThreadContext failed")"
in ..\win32src\thread32.cpp at line 434
Continue execution?

Kromě toho bylo opraveno několik dalších chyb pro Windows 7. Všechny opravy jsou také obsaženy v 2010 nebo v připravovaném servis packu pro D2010.

Více...

Datum: 2009-12-04 20:04:00 Tagy: Delphi 2009, embarcadero

Aktualizace

Delphi 2009 Handbook ke stažení

Marco Cantù je jeden z oblíbených autorů knih o Delphi. Jeho poslední kniha je Delphi 2009 Handbook a popisuje jen novinky a změny v Delphi 2009. Pokud jste registrovaným majitelem Delphi 2009, RAD Studio 2009, Delphi 2010 nebo RAD Studio 2010 tak neváhejte a na code central je k dispozici PDF verze této 400 stránkové knihy ke stažení zdarma. Více...

Datum: 2009-11-28 21:33:00 Tagy: Delphi 2010, Delphi 2009, Delphi 2007

Knihy