Több nyelvi egyesítési modul
Több nyelvi modul egyetlen összetett fájlként több különböző nyelvvel rendelkező összetevőket is képes biztosítani. Több nyelvegyesítési modul tervezése és működése hasonló az egynyelvű modulokhoz. A több nyelvű egyesítési modul több nyelvet is felsorol a Sablonösszegző tulajdonságban. A több nyelvű egyesítési modul adatbázisa több nyelv beállítási adatait tartalmazza. A több nyelvegyesítési modulban található MergeModule.CABinet kabinet tartalmazza az összes támogatott nyelvhez tartozó fájlokat.
Ha több nyelvű .msm fájlt alkalmaz egy .msi fájlra, az egyesítés után meg kell adnia a telepítőcsomag végső nyelvét. Egyetlen nyelvi egyesítési modul esetén az egyesítési modul Fájltábla felsorolja a MergeModule.CABinet kabinetben található összes fájlt. Több nyelvegyesítési modul esetén a MergeModule.CABinet a modul által támogatott összes nyelv összes fájlját tartalmazza, de csak a végső nyelvhez tartozó fájlok részhalmaza kerül a modul Fájl táblájába. Az egyesítési eszköznek biztosítania kell, hogy a modul biztosítsa a kért végső nyelvhez szükséges információk és fájlok részhalmazát.
Minden egyesítő modulhoz tartozik egy alapértelmezett nyelv, amely a ModuleSignature táblaNyelv oszlopában van megadva. Az egyesítési modul alapértelmezett nyelve is megjelenik a Sablonösszegző tulajdonság első vagy egyetlen nyelveként. A kért végső nyelvtől és a modul alapértelmezett nyelvétől függően az egyesítési eszköz nyelvátalakításokat alkalmazhat több nyelvi egyesítési modulra, hogy megnyissa a kért nyelven vagy a kért nyelv közelítésével. A nyelvi átalakítások az egyesítési modulba vannak beágyazva. Az egyesítési eszközöknek nyelvi átalakításokat kell alkalmazniuk az alábbi általános szabályok betartásával:
- Ha az alapértelmezett és a végleges nyelvek megegyeznek, a modul nyelvi átalakítások nélkül egyesíthető.
- Ha az alapértelmezett nyelv 0 (nyelvsemleges modul), a modul nyelvi átalakítások nélkül egyesíthető.
- Ha a végső nyelv nem az alapértelmezett nyelv, az egyesítési eszköznek a modulba ágyazott egyik nyelvátalakítást kell alkalmaznia a modul végleges nyelvre vagy a végső nyelv közelítésére történő módosításához.
Például nincs szükség nyelvi átalakításra, ha a végső nyelv 1033 (amerikai angol), és a modul alapértelmezett nyelve 1033 (amerikai angol), 0 (nyelvsemleges) vagy 9 (általános angol).
A nyelvi átalakításokra akkor van szükség, ha a végső nyelv 1033 (amerikai angol), az alapértelmezett nyelv pedig 1031 (német). Ebben az esetben az egyesítési eszköz először kereshet a több nyelvi modulban egy beágyazott nyelvi átalakítást 1033-ra (amerikai angol). Ha ez nem sikerül, akkor megkeresheti a megfelelő elsődleges LANGID azonosítóval rendelkező nyelvre való átalakítást, még akkor is, ha a másodlagos LANGID nem egyezik. Ha például az eszköz nem találja az 1033-ra (amerikai angol) való átalakítást, az átalakítást 9-re (általános angol) keresi. Ha ez nem sikerül, az egyesítési eszköz 0-ra (nyelvsemlegesség) keres átalakítást. Ha ezek a keresések egy megfelelő átalakítást keresnek, a modul nem nyílik meg.
További információ: Több nyelvegyesítési modul létrehozása.