Programátorské hrátkyGlobání RichEdit FixTato aplikace byla primárně určena jako dočasné řešení problému chybného zobrazení v prvku richedit. I když jsem po relativně dlouhé době nalezl elegantnější řešení (použití konkrétní verze knihovny riched20.dll), jde svým způsobem o zajímavou, obecně použitelnou ukázku.
Přeložená aplikace + zdrojový kód v Delphi. SysColorsJednoduchá pomocná utilita umožňující přenášet barevná schémata Windows. Při užití parametru save jsou nejprve zjištěny odpovídající barvy příslušných systémových konstant, ty jsou posléze uloženy do souboru SysColors.cfg. K opětovnému nahrání slouží parametr load. Program je dobrou pomůckou pro ověření výsledného vzhledu na OS s jiným barevným schématem (např. různé verze Windows). Jednoduchou úpravou kódu je možné vytvořit nová nestandardní témata (viz použití API funkcí GetSysColor,SetSystemColors).Přeložená aplikace + zdrojový kód v Delphi. Test znalostí DelphiCelkem jednoduchý příklad, který jsem vypracoval v rámci jednoho vstupního pohovoru (ucházel jsem se o místo vývojáře). Poté následoval ještě druhý úkol, kdy jsem měl vytvořit stored proceduru pro MS SQL. Byla to vlastně vůbec první složitější SQL zkušenost, studoval jsem asi týden. Ale bavilo mě to a za podpory několika kamarádů jsem výsledek odevzdal. Z práce nakonec stejně nic nebylo, tedy mé znalosti byly dostačující, ale prostě jsme se tak nějak nedohodli. Dnes jsem tomu docela rád - přeci jen, pracovat ve firmě, kde nedokáže komunikovat ani její šéf, to už raději nic. :-)
Přeložená aplikace + zdrojový kód v Delphi. XP shutdown
Přeložená aplikace + zdrojový kód v Delphi. Domeček jedním tahemJistě každý znáte klasickou školní úlohu... Také mne tato myšlenka oslovila - kolik řešení vůbec existuje? Jedno, dvě, nebo snad více? Po několika hodinovém zamyšlení jsem pouhým pohledem nalezl 9 řešení, každé je ale proveditelné i "zrcadlově", celkem tedy 18. Pomohli také kolegové a kamarádi, někteří hledali, jiní pouze tipli výsledek. Začal jsem proto uvažovat nad možným programovým řešením, nejprve pouze teoreticky, v úvahách a zamyšleních s nemalou dávkou motivace vymyslet něco nového. Několik okamžiků jsem také věnoval pročtení matematické teorie grafů, na kterou jsem byl nasměrován, velký dík také patří K.Soukupovi za jeho studijní poznatek (platí, že každé správné řešení musí začínat a končit v bodě s lichým počtem vazeb - tedy C a D). Protože se mi nikde nepodařilo nalézt konečný výsledek, je to také jediný důkaz mého správného postupu.
Přeložená aplikace + zdrojový kód v Delphi. AppsOnLANKolega se na mě obrátil s dotazem, zda-li by se dalo nějakým způsobem zjistit, kde má nainstalované jaké verze Microsoft Office. Nechtělo se mu obcházet přes 80 stanic (také jsem lenoch ;)). Tak jsem přišel na docela zajímavou myšlenku, kterou jsem během několika minut proměnil v tuto utilitu.Ta si nejprve vytvoří seznam všech okolních PC, která jsou na síti (nejen v doméně) k dispozici. Následuje pokus o připojení vzdáleného registru, z nějž jsou v případě úspěchu získávány informace o nainstalovaných programech (využití klíče ..\Uninstall v HKLM). Režim programu lze ovlivnit parametrem: * provede kompletní výstup bez jakéhokoli omezení, jiný parametr pak aktivuje jednoduchý filtr - zadané slovo musí být obsaženo, přičemž velikost písmen není zohledněna. Jen vyobrazení českých znaků v konzoli je trochu problém, záleží na nastavení prostředí (možná pomůže příkaz chcp, nemám vyzkoušeno). Ukázka použití: AppsOnLAN.exe * >sestava.txt | AppsOnLAN.exe oFFicE | AppsOnLAN.exe "Microsoft Office Professional" Přeložená aplikace + zdrojový kód v Delphi. Dělové kouleStředověcí dělostřelci stavěli tehdejší kamenné koule do pyramid. A to buď se čtvercovitou nebo trojúhelníkovou základnou. Např.: základnu pyramidy tvořil čtverec 5x5 koulí, na ní postavili 4x4 koule, atd., na vrchol umístili jednu kouli. Tato čtvercová pyramida tedy obsahovala 25+16+9+4+1=55 koulí. Avšak mohli stavět koule do pyramid s trojúhelníkovou základnou. Základnu tak tvoří např. 10 koulí, další vrstvu 6, na ní jsou 3 koule a na vrcholu jedna koule. Celkem je v této trojúhelníkové pyramidě takto sestaveno 10+6+3+1=20 koulí. Otázka zní: Existuje počet koulí, ze kterých se dá postavit čtvercová i trojúhelníková pyramida? Triviální řešení jedna koule neuvažujeme.
Přeložená aplikace + zdrojový kód v Delphi nebo C++ (WinAPI). Recognizer... popis se připravuje
Přeložená aplikace + zdrojový kód v Delphi. Baťáček s rekurzíPotřebujete provést libovolnou operaci se soubory určitého typu, které se nacházejí třeba i v několikáté úrovni podadresářů? Nemám namysli přejmenování, které v dnešní době zvládne kdejaký program, ale využití odpovídajícího jména jako parametru pro jiný program. Baťáček dokáže projít dostupné podadresáře (začíná na úrovni, kde je spuštěn), najít soubory vyhovující zadané masce a ty pak předat další aplikaci obstarávající zbytek akce. Osobně používám například pro hromadnou legalizaci Eagle projektů (soubory schémat i desek). Nebudu popisovat jednotlivé příkazy, raději doporučuji osobně prozkoumat. Chtěl jsem spíše ukázat použitelnost a především jednoduchost tohoto řešení.Ukázkový cmd/bat soubor. MoreCPU exampleTato aplikace je malou ukázkou využití výpočetního výkonu na víceprocesorovém stroji. Toto téma mne lákalo již delší dobu, nicméně jsem neměl k dispozici potřebný hardware, na kterém bych s něčím takový mohl začít experimentovat. Alespoň částečným uspokojením se mi stalo mé nové pracovní PC s Intel P4 (HyperThreading), na kterém jsem si prográmek poprvé ozkoušel.
Přeložená aplikace + zdrojový kód v Delphi. |