> Ne verujem da bi se vratio na bilo koji Delphi pre D2005, kao što ne shvatam zašto se i dalje insistira na 9x podršci kad je i MS digao ruke
> od toga. O ovome možemo da pričamo ili private ili u nekoj drugoj temi, nemoj da idemo ovde u offtopic.
Ja i dalje aktivno koristim D5, D7 mi je primarno okruženje a BDS po potrebi.
Pitanje i nije toliko vezano za Win9x, dobar program treba da radi na bilo kom sistemu sa bilo kakvim podešavanjima, a ne da se zahteva promena sistemskog jezika ili podešavanja.
> E vidiš, upravo smo otkrili u čemu je problem i jeste problem do Windowsa, a ne do Delphija.
> Problem je novi comctl32.dll, odnosno XP manifest, koji kaže aplikaciji da koristi novi comctl.
Bug je u Delphiu, evo i zašto. On uneti tekst snimi kao UTF8, tj. kao Unicode, kako label ili edit kontrole koriste AnsiString, on mora implicitno konvertovati Unicode u Ansi i tu konverziju vrši po sistemskoj kodnoj strani. Ako je uneti tekst ćirilica, a sistemski jezik latinica, biće upotrebljena pogrešna kodna strana i kao rezultat će se dobiti kuke i kvake. E zato ako se ćirilica postavi kao sistemski jezik, menja se i kodna strana po kojoj se radi konverzija i kao rezultat izađe ispravan ANSI string. D5 se ne pravi pametan i tekst čuva kako je unet i nema implicitne unicode -> ansi konverzije.
> Molim te da probaš nešto. Ubaci u svoju aplikaciju, koja inače radi, XP manifest, pa mi javi da li radi.
Imam W2K. Da li si ti probao onaj moj exe, trebalo bi da radi svuda i bez obzira na podešeavanja sistema.
> Ja sam lepo ćirilicom napisao ćirilični string, a on ladno prebacio iz 1251 u 1250. :(
Aha, da i ja sam to primetio par puta, namerno su zabranili pisanje ćirilićnih tekstova, što mislim da je greška.
> btw. Sad mi je skrenuta pažnja da je mnogo jednostavnije staviti SetMultiByteConversionCodePage(1251), nego koristiti one dve funkcije.
Tako se, pretpostavljam, postavlja kodna strana po kojoj se vrši implicitna konverzija koju sam gore spominjao. Ne mislim da je bolje rešenje, sa izričitom konverzijom se više kuca ali se tačno vidi šta se dešava i kod je kompatibilan sa raznim Delphi verzijama.