Lazarus 2.0.12 (2021.02.21.)
Letöltés

  • Oldal:
  • 1

TÉMA:

DatabaseName és magyar ékezetek 2016 szept. 20 14:33 #2111

  • drschwarcz
  • drschwarcz profilkép Témaindító
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 39
  • Köszönetek: 0
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 ;)

DatabaseName és magyar ékezetek 2016 szept. 20 13:59 #2110

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 463
  • Köszönetek: 76
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)
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- FPC 3.3.1 -- Lazarus 2.1.0 -- GNU/Linux 5.4.0 x86_64
Megköszönték: drschwarcz

DatabaseName és magyar ékezetek 2016 szept. 19 17:59 #2106

  • drschwarcz
  • drschwarcz profilkép Témaindító
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 39
  • Köszönetek: 0
Í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 ;)

DatabaseName és magyar ékezetek 2016 szept. 19 17:56 #2105

  • ejbenjaro
  • ejbenjaro profilkép
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 66
  • Köszönetek: 4
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: lassuviz.blogspot.hu/

DatabaseName és magyar ékezetek 2016 szept. 19 14:53 #2103

  • drschwarcz
  • drschwarcz profilkép Témaindító
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 39
  • Köszönetek: 0
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 ;)

  • Oldal:
  • 1