Používám Delphi a zde jsem nikdy neměl žádný problém s použitím českých specických znaků.
Při použití Lazarusu jsem však narazil na dost zásadní problém:
Jestliže např. do řetezcové proměnné uložím text obsahující české znaky a pak chci tento řetězec procházet znak po znaku a s jednotlivými znaky něco dělat, zdá se, jako by tyto znaky zabíraly 2 pozice.
Takže když třeba použiji funkci Pos na zjištění pozice podřetězce v řetězci, tak to nevrátí správnou hodnotu, ale hodnotu, v níž se každý "český znak" projeví 2 krát
(např Pos ('ka' , 'žárovka') vrátí 8 místo očekávaných 6).
Zřejmě nezávisí na verzi Win, na kterých se Lazarus provozuje. Možná souvisí s Unicode, ale jak??