Lazarus 2.0.10 (2020.07.11.)
Letöltés

question-circle DatabaseName és magyar ékezetek

  • drschwarcz
  • drschwarcz profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Köszönetek: 0

drschwarcz válaszolt a témára: DatabaseName és magyar ékezetek

A könyvtár szerkezet egy Lazarusban írt telepítő alkalmazás hozza létre.
CreateDir(UTF8ToAnsi(Konyvtar_TEdit.Text + 'Mentések'));

A hol a Konyvtar_TEdit.Text-ben például ez szerepel: e:\program\

Nem próbáltam ki, de tutira veszem, hogy ha ezt a programot is újra lefordítanám 1.6.0-ás verzióval, akkor nem hozná létre a könyvtárat.

Javaslatodnak megfelelően módosítottam a forráskódot.
if not FileExists(UTF8toCP1250(EleresiUt + 'Mentések\2016\Test.fb')) then
begin
  DataModule1.IBConnection.DatabaseName := UTF8toCP1250(EleresiUt + 'Mentések\2016\Test.fb');
  DataModule1.IBConnection.CreateDB;
  DataModule1.IBConnection.Connected := True;
end;

Yesss! ...és működik! 1000 köszönet.

Lazarus 1.8.0RC1 @ Windows 10
“Csak két dolog végtelen: a Világegyetem és az emberi butaság, bár az elsőben nem vagyok egészen biztos.” (Albert Einstein) :D ;)
#2111

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 432
  • Karma: 8
  • Köszönetek: 70

Gábor válaszolt a témára: DatabaseName és magyar ékezetek

Ha terminálban (parancssor) lett létrehozva a könyvtár akkor lehetnek gondok a grafikus felületen (és fordítva), mivel a windows eltérő kódolást használ a két felületen (a visszafelé kompatibilitás és a jövő megnehezítése érdekében).
Próbálkozhatsz az LConvEncoding unit függvényeivel, ha tudod vagy eltalálod az útvonal létrehozásakor használt kódlap számát.
A Lazarus a belső eljárásokban UTF-8 kódolást használ ezért a beolvasott adatokat először erre kell átalakítani, majd mielőtt egy rendszerhívást hajtasz végre vissza kell alakítani a rendszer által használt kódlapnak megfelelő kódolásra.

Magyar windows esetén a Dos ablak kódlapja a 852-es, míg a grafikus felületé a 1250-es (East European Latin)
#2110
Megköszönték: drschwarcz

  • drschwarcz
  • drschwarcz profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Köszönetek: 0

drschwarcz válaszolt a témára: DatabaseName és magyar ékezetek

Írtam az imént, hogy ezt próbáltam, de nem működik.

Lazarus 1.8.0RC1 @ Windows 10
“Csak két dolog végtelen: a Világegyetem és az emberi butaság, bár az elsőben nem vagyok egészen biztos.” (Albert Einstein) :D ;)
#2106

  • ejbenjaro
  • ejbenjaro profilkép
  • Gyakori fórumozó
  • Gyakori fórumozó
  • Hozzászólások: 66
  • Köszönetek: 4

ejbenjaro válaszolt a témára: DatabaseName és magyar ékezetek

Sima fájl mentésnél az UTF8ToSys szokott működni, visszaolvasásnál pedig a SysToUTF8.

Mottó:
"Az ember sokszor más mint aminek látszik. De ritkán jobb..."
--
Gép : Asus P5G41T-M LX, Intel Celeron DC E3400, 4GB DDR3, 320GB SATA2, minden más integrált.
OS : Ubuntu 14.04
--
web: http://lassuviz.blogspot.hu/
#2105

  • drschwarcz
  • drschwarcz profilkép
  • Haladó fórumozó
  • Haladó fórumozó
  • Hozzászólások: 39
  • Köszönetek: 0

drschwarcz létrehozta a témát: DatabaseName és magyar ékezetek

Az adatbázist egy ékezeteket is tartalmazó elérési útvonalon szeretném létre hozni, de nem működik (ékezetek elkerülésével sikeres).

Próbáltam különböző konverziókat (UFT8ToSys, AnsiToUTF8...), nincs eredmény.

Látam, hogy BUG-ként már többször lett jelentve a karakterkezelés problémája, de 2016. januárban volt utolsó update és ha jól emlékszem, akkor le is lett zárva, mint "megoldott". Az én figyelmemet kerülte el valami?

Környezet: Win10+Lazarus 1.6.0 Adatbázis kezeléshez FireBird-öt választottam.

Lazarus 1.8.0RC1 @ Windows 10
“Csak két dolog végtelen: a Világegyetem és az emberi butaság, bár az elsőben nem vagyok egészen biztos.” (Albert Einstein) :D ;)
#2103