Opět se mi nastřádalo pár odkazů. Takže dnes to bude obsluha http na low level úrovni, něco z minulosti Delphi, komponenta pro FireMonkey a další efektové.
Danny Thorpe je jeden z autorů Delphi (a člověk za Kylixem), který bohužel odešel před převzetím divize vývojových nástrojů (a bylo mi to moc líto). Teď napsal odpověď na dotaz proč Borland selhal na server quora - Why did Borland fail. Něco z toho už jsem popsal v zásadním článku Proč má Delphi Embarcadero (viz menu nahoře pod kratším názvem). Ale líbí se mi tam jedna věta. V době přerodu z firmy na vývojové nástroje na firmu vyvíjející Enterprise řešení se prý Danny ptal tehdejšího CEO:
- Are you saying you want to trade a million loyal $100 customers
for a hundred $1 million customers?
- Absolutely
bohužel. Naštěstí Embarcadero to podle všeho bere naopak.
Myslím, že jsem to tu ještě neřešil, ale pro Delphi < 2009 je chyba v obsluze chování checkboxu u TDateTimePicker. On celý ten control (a tím myslím i ten z Windows) je takový divný. Oprava je např. www.tmssoftware.com/site/blog.asp?post=117, ale
mají tam chybu, správně má být
procedure TFixedDateTimePicker.CNNotify(var Message: TWMNotify);
begin
with Message, NMHdr^ do
begin
if (code = DTN_DATETIMECHANGE) and ShowCheckBox then
begin
with PNMDateTimeChange(NMHdr)^ do
begin
Checked := dwFlags <> GDT_NONE;
end;
end;
end;
inherited;
end;
Pawel Glowacki je hračička a publikoval kompletní postup pro vývoj vlastní FireMonkey komponenty - Custom FireMonkey "TSimpleTriangle" component.
Andreano Lanusse zase návod jak udělat rozšíření shellu pro 32bit a pro 64bit Windows.
Když už jsem u těch rozšíření, tak jsem se chvilku hrabal ve zdrojácích SeaMonkey (což je Thunderbird sloučený s Firefoxem) a hledal, jak mají vyřešenu podporu pro MAPI. Tj. pokud dáte na soubor odeslat - příjemce pošty, tak aby se dostal Váš program na řadu.
Klíčem je DLL s rozhraním, viz. MappDLL.cpp a pak ještě nastavit registry Registry.cpp.
TSvSerializer je zajímavý kód, který umí např. serializovat TDataSet do JSON.
Nejzajímavějším výkřikem je podle mne HTTP server using fast http.sys kernel-mode server. Arnaud Bouchez tu už byl několikrát zmiňován - např. Synopse PDF, mORMot framework, atd. - a opět mne překvapil.
IIS používá pro obsluhu HTTP požadavků http.sys, což je kernel driver. On naprogramoval zapouzdření do Delphi, takže žádná další vrstva není potřeba. Ten člověk je prostě posedlý rychlostí. A všechno dává jako Open Source.