Az 1038 a Windows magyar nyelvi azonosítója, vagyis a magyar locale LCID decimális értéke. Hexadecimális alakja 0x040E, nyelvi kódja hu, a hozzá tartozó locale-karakterlánc pedig hu.
A magyar Windows-locale azonosítója több környezetben is megjelenhet: rendszer- és felhasználói beállításokban, rendszerleíró adatbázisban, nyelvi erőforrások könyvtárneveiben, fejlesztői API-kban, valamint dátum-, idő-, szám- és rendezési beállítások meghatározásakor.
Az 1038-as azonosító legfontosabb értékei
| Tulajdonság | Érték |
|---|---|
| Nyelv | Hungarian |
| Magyar megnevezés | magyar |
| ISO 639-1 nyelvi kód | hu |
| Locale-kód | hu |
| LCID decimális érték | 1038 |
| LCID hexadecimális érték | 0x040E |
| Windows nyelvi azonosító | 1038 |
| Kódoldal | 1250 |
| Unicode-azonosítás | UTF-8 |
A Microsoft meghatározása szerint a locale nyelvhez kapcsolódó felhasználói beállítások gyűjteménye, amely értékek listájaként jelenik meg. A locale lehet önálló nyelv, illetve egy nyelv és egy ország kombinációja.
A Locale ID, röviden LCID, a Microsoft Windows által definiált 32 bites érték, amely egy nyelvi azonosítóból, egy rendezési azonosítóból és fenntartott bitekből áll, és egy adott nyelvet vagy nyelvi változatot azonosít.
A magyar locale kódjai
A magyar nyelv ISO 639-1 kódja hu. A nyelvhez tartozó Windows-kód 1038, hexadecimális formában pedig 40e, illetve teljes LCID-formátumban 0x040E.
| Kódtípus | Magyar érték |
|---|---|
| Nyelvi kód | hu |
| LCID decimális | 1038 |
| LCID hexadecimális | 40e |
| Teljes hexadecimális LCID | 0x040E |
| Windows-regisztrációs locale-érték | 1038 |
| Kódoldal | 1250 |
Az LCID-ket nem szabad összekeverni a nyelvi címkékkel. A hu nyelvkód önmagában a magyar nyelvet jelöli, míg az 1038 a Microsoft Windows hagyományos LCID-értéke.
A modernebb rendszerekben a Microsoft egyre inkább az IETF RFC 4646 szerinti locale-neveket használja az LCID-k helyett. A magyar nyelv egyszerű locale-neve ebben a rendszerben hu.
Az 1038 felépítése
A nyelvi azonosító 16 bites érték. A nyelvi azonosító egy elsődleges nyelvi azonosító és egy alnyelvi azonosító kombinációjaként számítható ki: locale id = 1024 * sublanguage id + primary language id.
A magyar nyelvnél az alnyelvi azonosító 1, az elsődleges nyelvi azonosító pedig 14, ezért a számítás a következő: 1 × 1024 + 14 = 1038.
| Összetevő | Érték |
|---|---|
| Elsődleges nyelvi azonosító | 14 |
| Alnyelvi azonosító | 1 |
| Számítás | 1 × 1024 + 14 |
| Decimális eredmény | 1038 |
| Hexadecimális eredmény | 0x040E |
A WinAPI fejlécfájljai a MAKELANGID makrót biztosítják nyelvi azonosító létrehozására. A nyelvi azonosítót gyakran olyan könyvtárak nevében használják, amelyek nyelvhez kötött fájlokat tárolnak, például a %SYSTEMROOT%\System32\1033 könyvtárban.
Magyar kódoldal és Unicode
A magyar locale-hoz a táblázat a 1250-es kódoldalt rendeli. Ez a közép-európai, latin betűs Windows-környezetekhez kapcsolódó kódolási érték.
A kódoldal elavult módszer a karakterkódolás kezelésére. Ma előnyösebb a Unicode 16 bites karakterkészletének használata.
A kódoldal olyan rendezett karakterkészlet, amelyben minden karakterhez numerikus index, vagyis kódpontérték tartozik. Minden kódoldal első 128 karaktere funkcionálisan azonos, és tartalmazza az angol szöveg gépeléséhez szükséges karaktereket.
Az OEM- és ANSI-kódoldalak felső 128 karaktere olyan karaktereket tartalmaz, amelyeket egy adott nyelv vagy nyelvcsoport használ. A Unicode ezzel szemben egységesebb módon kezeli a különböző nyelvek karaktereit.
| Terület | Magyar érték |
|---|---|
| Hagyományos Windows-kódoldal | 1250 |
| Unicode-kódolás | UTF-8 |
| Karakterkészlet-ajánlás | Unicode használata a kódoldalak helyett |
Az 1038 használata a Windowsban
Az 1038-as érték a magyar nyelvhez kapcsolódó rendszerbeállítások azonosítására szolgál. A nyelvi azonosító megjelenhet a rendszerleíró adatbázisban, az operációs rendszer erőforrásaiban, a nyelvi csomagokban és a fájlrendszer nyelvspecifikus könyvtáraiban.
A Windows nyelvi és területi beállításai nemcsak a felület nyelvét határozhatják meg, hanem a számok, dátumok, idők, pénznemek és szövegek megjelenítését, valamint a rendezési szabályokat is befolyásolhatják.
VBScriptben a helyi számítógép locale-kódja a GetLocale() függvénnyel kérhető le. Az így kapott érték a rendszer aktuális területi beállításához kapcsolódó LCID lehet.
Az 1038 összehasonlítása más gyakori LCID-értékekkel
| Nyelv | LCID decimális | LCID hexadecimális |
|---|---|---|
| Angol (Egyesült Államok) | 1033 | 0x0409 |
| Német (Németország) | 1031 | 0x0407 |
| Francia (Franciaország) | 1036 | 0x040C |
| Olasz (Olaszország) | 1040 | 0x0410 |
| Lengyel | 1045 | 0x0415 |
| Cseh | 1029 | 0x0405 |
| Magyar | 1038 | 0x040E |
| Orosz | 1049 | 0x0419 |
| Román | 1048 | 0x0418 |
| Szlovák | 1051 | 0x041B |
Az összehasonlításból látható, hogy a magyar 1038-as LCID a közép-európai nyelvek között szerepel, és a 1250-es kódoldalhoz kapcsolódik.
Locale, nyelvkód és országkód
A nyelvi címkékben a nyelvkód és az ország- vagy régiókód különböző szerepet tölt be. A hu a nyelvet jelöli, míg egy összetett címkében a kötőjel után álló rész egy országot vagy régiót jelölhet.
Az en-US például az amerikai angolt, az en-GB a brit angolt, az de-DE a németországi németet, a fr-FR pedig a franciaországi franciát jelöli.
A magyar alapnyelv esetében a rövid Windows-locale hu. A Microsoft nyelvi azonosító-listáiban a magyar bejegyzés neve Hungarian, az azonosítója pedig 0x040E, azaz 1038.
Windows nyelvi csomagok és LIP-ek
A nyelvi csomagok és a nyelvi felületcsomagok, vagyis a LIP-ek, az operációs rendszer különböző verzióiban eltérő támogatási szabályok szerint érhetők el. A nyelv, a LIP vagy a Feature on Demand verziójának meg kell egyeznie az operációs rendszer verziószámával.
Például Windows 10 1809-es verziójú LIP nem adható hozzá Windows 10 1803-as verziójú lemezképhez, és Windows Server 2019-es nyelvi csomag nem adható hozzá Windows Server 2016-hoz.
Nyelvek nem adhatók hozzá a Home Single Language és a Home Country Specific kiadásokhoz. A Windows Server esetében elérhetők a billentyűzet- és regionális beállítások, például a pénznem, az időzóna, valamint a dátum- és időformátum módosításai, de LIP-ek nem érhetők el.
A Microsoft LCID-rendszerének korlátai
Az LCID-ket elsősorban a Microsoft Windows nem felügyelt kódot használó összetevői alkalmazzák. A Windows Vista megjelenésétől kezdve a Microsoft az LCID-k helyett egyre inkább az IETF RFC 4646 szerinti locale-nevek használatát vezeti be.
Ez azt jelenti, hogy új fejlesztésekben a nyelvi és régiócímkéket érdemes előnyben részesíteni, miközben a régebbi Windows API-k, rendszerleíró bejegyzések és örökölt alkalmazások továbbra is használhatják az 1038-as LCID-t.
- 1038: magyar LCID decimális formában.
- 0x040E: magyar LCID hexadecimális formában.
- hu: a magyar ISO 639-1 nyelvi kód.
- 1250: a magyar bejegyzéshez kapcsolódó hagyományos Windows-kódoldal.
- UTF-8: korszerű Unicode-alapú karakterkódolás.
- 14: a magyar elsődleges nyelvi azonosító.
- 1: a magyar alnyelvi azonosító az LCID-számításban.
Gyakori félreértések az 1038-as kóddal kapcsolatban
Az 1038 nem fájlkiterjesztés, nem karakterkódolás és nem országkód. Ez a magyar nyelvhez kapcsolódó Microsoft Windows Language ID, illetve LCID-érték.
A 1250 sem maga a magyar nyelv azonosítója, hanem egy hagyományos kódoldal. Az 1038 és a 1250 ezért különböző fogalmakat jelöl: az előbbi locale- vagy nyelvi azonosító, az utóbbi karakterkódolási rendszer.
A hu és az 1038 szintén nem felcserélhető minden környezetben. A hu nyelvi címke, az 1038 pedig egy Microsoft-specifikus numerikus azonosító.
| Érték | Mit azonosít? |
|---|---|
| hu | A magyar nyelv ISO 639-1 kódja |
| 1038 | A magyar Windows LCID decimális értéke |
| 0x040E | A magyar Windows LCID hexadecimális értéke |
| 1250 | Hagyományos közép-európai Windows-kódoldal |
| UTF-8 | Unicode-alapú karakterkódolás |
Az 1038-as érték tehát akkor a megfelelő azonosító, amikor egy Windows-specifikus rendszerben a magyar locale-t numerikus LCID formájában kell megadni vagy felismerni.
