- Added ACP, OEMCP and MACCP keys to registry
authorDmitry Chapyshev <dmitry@reactos.org>
Mon, 7 Jan 2008 14:51:42 +0000 (14:51 +0000)
committerDmitry Chapyshev <dmitry@reactos.org>
Mon, 7 Jan 2008 14:51:42 +0000 (14:51 +0000)
- Added ERROR_ADDING_CODEPAGE to all languages
- Update Russian translation

svn path=/trunk/; revision=31642

15 files changed:
reactos/base/setup/usetup/errorcode.h
reactos/base/setup/usetup/interface/usetup.c
reactos/base/setup/usetup/lang/de-DE.h
reactos/base/setup/usetup/lang/el-GR.h
reactos/base/setup/usetup/lang/en-US.h
reactos/base/setup/usetup/lang/es-ES.h
reactos/base/setup/usetup/lang/fr-FR.h
reactos/base/setup/usetup/lang/it-IT.h
reactos/base/setup/usetup/lang/pl-PL.h
reactos/base/setup/usetup/lang/ru-RU.h
reactos/base/setup/usetup/lang/sv-SE.h
reactos/base/setup/usetup/lang/uk-UA.h
reactos/base/setup/usetup/mui.c
reactos/base/setup/usetup/mui.h
reactos/base/setup/usetup/settings.c

index 7f451fe..c1a444a 100644 (file)
@@ -62,6 +62,7 @@ typedef enum
     ERROR_CREATE_INSTALL_DIR,
     ERROR_FIND_SETUPDATA,
     ERROR_WRITE_PTABLE,
+    ERROR_ADDING_CODEPAGE,
 
     ERROR_LAST_ERROR_CODE
 }ERROR_NUMBER;
index 425e864..9201e91 100644 (file)
@@ -3093,6 +3093,14 @@ RegistryPage(PINPUT_RECORD Ir)
       return QUIT_PAGE;
     }
 
+  /* Add codepage information to registry */
+  CONSOLE_SetStatusText("   Adding codepage information to registry...");
+  if (!AddCodePage())
+    {
+      MUIDisplayError(ERROR_ADDING_CODEPAGE, Ir, POPUP_WAIT_ENTER);
+      return QUIT_PAGE;
+    }
+
   /* Update the mounted devices list */
   SetMountedDeviceValues(PartitionList);
 
index de08852..fddbfa9 100644 (file)
@@ -1457,6 +1457,11 @@ MUI_ERROR deDEErrorEntries[] =
         "Setup konnte die Partitionstabellen nicht schreiben.\n"
         "ENTER = Computer neustarten"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index d657ab1..a61b5ab 100644 (file)
@@ -1451,6 +1451,11 @@ MUI_ERROR elGRErrorEntries[] =
         "Ç ÅãêáôÜóôáóç áðÝôõ÷å íá ãñÜøåé ôá partition tables.\n"
         "ENTER = Åðáíåêêßíçóç õðïëïãéóôÞ"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index d2b1494..0914803 100644 (file)
@@ -1275,7 +1275,7 @@ MUI_ERROR enUSErrorEntries[] =
             "\n"
             "  \x07  Press ENTER to continue Setup.\n"
             "  \x07  Press F3 to quit Setup.",
-            "F3= Quit  ENTER = Continue"
+            "F3 = Quit  ENTER = Continue"
     },
     {
         //ERROR_NO_HDD
@@ -1451,6 +1451,11 @@ MUI_ERROR enUSErrorEntries[] =
         "Setup failed to write partition tables.\n"
         "ENTER = Reboot computer"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index cdbda9e..858c7cc 100644 (file)
@@ -1451,6 +1451,11 @@ MUI_ERROR esESErrorEntries[] =
         "Setup failed to write partition tables.\n"
         "ENTER = Reboot computer"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index 9f0af0d..8f962f4 100644 (file)
@@ -1463,6 +1463,11 @@ MUI_ERROR frFRErrorEntries[] =
         "Setup n'a pu ecrire les tables de partition.\n"
         "ENTER = Redemarrer l'ordinateur"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index 0431c35..59920be 100644 (file)
@@ -1457,6 +1457,11 @@ MUI_ERROR itITErrorEntries[] =
         "Setup non ha potuto scrivere le tabelle di partizioni.\n"
         "INVIO = Riavviare il computer"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index ff72f78..9fcb525 100644 (file)
@@ -1459,6 +1459,11 @@ MUI_ERROR plPLErrorEntries[] =
         "Instalator nie móg³ zapisaæ zmian w tablicy partycji.\n"
         "ENTER = Restart komputera"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index 7e97f0d..4f95691 100644 (file)
@@ -6,37 +6,37 @@ static MUI_ENTRY ruRULanguagePageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "Language Selection.",
+        "Âûáîð ÿçûêà",
         TEXT_NORMAL
     },
     {
         8,
         10,
-        "\x07  Please choose the language used for the installation process.",
+        "\x07  Ïîæàëóéñòà âûáåðèòå ÿçûê èñïîëüçóåìûé ïðè óñòàíîâêå.",
         TEXT_NORMAL
     },
     {
         8,
         11,
-        "   Then press ENTER.",
+        "   Çàòåì íàæìèòå ENTER.",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "\x07  This Language will be the default language for the final system.",
+        "\x07  Ýòîò ÿçûê áóäåò óñòàíîâëåí ïî óìîë÷àíèþ â óñòàíîâëåííîé ñèñòåìå.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   ENTER = Continue  F3 = Quit",
+        "   ENTER = Ïðîäîëæèòü  F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -52,55 +52,55 @@ static MUI_ENTRY ruRUWelcomePageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "\84®¡à® ¯®¦ «®¢ âì ¢ ãáâ ­®¢ªã ReactOS",
+        "Äîáðî ïîæàëîâàòü â óñòàíîâêó ReactOS",
         TEXT_HIGHLIGHT
     },
     {
         6,
         11,
-        "\8d  í⮩ áâ ¤¨¨ ãáâ ­®¢ª¨ ¡ã¤ãâ áª®¯¨à®¢ ­ë ä ©«ë ®¯¥à æ¨®­­®© á¨á⥬ë ReactOS",
+        "Íà ýòîé ñòàäèè óñòàíîâêè áóäóò ñêîïèðîâàíû ôàéëû îïåðàöèîííîé ñèñòåìû ReactOS",
         TEXT_NORMAL
     },
     {
         6,
         12,
-        "­  ¢ è ª®¬¯ìîâ¥à ¨ ¯®¤£®â®¢«¥­  ¢â®à ï áâ ¤¨ï ãáâ ­®¢ª¨.",
+        "íà âàø êîìïüþòåð è ïîäãîòîâëåíà âòîðàÿ ñòàäèÿ óñòàíîâêè.",
         TEXT_NORMAL
     },
     {
         8,
         15,
-        "\x07  \8d ¦¬¨â¥ \82\82\8e\84 ¤«ï ãáâ ­®¢ª¨ ReactOS.",
+        "\x07  Íàæìèòå ENTER äëÿ óñòàíîâêè ReactOS.",
         TEXT_NORMAL
     },
     {
         8,
         17,
-        "\x07  \8d ¦¬¨â¥ R ¤«ï ¢®áâ ­®¢«¥­¨ï ReactOS.",
+        "\x07  Íàæìèòå R äëÿ âîñòàíîâëåíèÿ ReactOS.",
         TEXT_NORMAL
     },
     {
         8,
         19,
-        "\x07  \8d ¦¬¨â¥ L ¤«ï ¯à®á¬®âà  «¨æ¥­§¨®­­®£® á®£« è¥­¨ï ReactOS",
+        "\x07  Íàæìèòå L äëÿ ïðîñìîòðà ëèöåíçèîííîãî ñîãëàøåíèÿ ReactOS",
         TEXT_NORMAL
     },
     {
         8,
         21,
-        "\x07  \8d ¦¬¨â¥ F3 ¤«ï ¢ë室  ¨§ ãáâ ­®¢ª¨ ReactOS.",
+        "\x07  Íàæìèòå F3 äëÿ âûõîäà èç óñòàíîâêè ReactOS.",
         TEXT_NORMAL
     },
     {
         6,
         23,
-        "\84«ï ¤®¯®«­¨â¥«ì­®© ¨­ä®à¬ æ¨¨ ® ReactOS ¯®á¥â¨â¥:",
+        "Äëÿ äîïîëíèòåëüíîé èíôîðìàöèè î ReactOS ïîñåòèòå:",
         TEXT_NORMAL
     },
     {
@@ -112,7 +112,7 @@ static MUI_ENTRY ruRUWelcomePageEntries[] =
     {
         0,
         0,
-        "   \82\82\8e\84 = \8fத®«¦¥­¨¥  R = \82®áâ ­®¢«¥­¨¥ F3 = \82ë室",
+        "   ENTER = Ïðîäîëæåíèå  R = Âîñòàíîâëåíèå F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -128,85 +128,85 @@ static MUI_ENTRY ruRUIntroPageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "ReactOS ­ å®¤¨âáï ¢ à ­­¥© áâ ¤¨¨ à §à ¡®âª¨ ¨ ­¥ ¯®¤¤¥à¦¨¢ ¥â ¢á¥",
+        "ReactOS íàõîäèòñÿ â ðàííåé ñòàäèè ðàçðàáîòêè è íå ïîääåðæèâàåò âñå",
         TEXT_NORMAL
     },
     {
         6,
         9,
-        "ä㭪樨 ¤«ï ¯®«­®© á®¢¬¥á⨬®á⨠á ãâ ­ ¢«¨¢ ¥¬ë¬¨ ¯à¨«®¦¥­¨ï¬¨.",
+        "ôóíêöèè äëÿ ïîëíîé ñîâìåñòèìîñòè ñ óòàíàâëèâàåìûìè ïðèëîæåíèÿìè.",
         TEXT_NORMAL
     },
     {
         6,
         12,
-        "\88¬¥îâáï á«¥¤ãî騥 ®£à ­¨ç¥­¨ï:",
+        "Èìåþòñÿ ñëåäóþùèå îãðàíè÷åíèÿ:",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "- \93áâ ­®¢ª  ¢®§¬®¦­  â®«ìª® ­  ¯¥à¢¨ç­ë© à §¤¥« ¤¨áª ",
+        "- Óñòàíîâêà âîçìîæíà òîëüêî íà ïåðâè÷íûé ðàçäåë äèñêà",
         TEXT_NORMAL
     },
     {
         8,
         14,
-        "- \8fਠãáâ ­®¢ª¥ ­¥«ì§ï ã¤ «¨âì ¯¥à¢¨ç­ë© à §¤¥« ¤¨áª ",
+        "- Ïðè óñòàíîâêå íåëüçÿ óäàëèòü ïåðâè÷íûé ðàçäåë äèñêà",
         TEXT_NORMAL
     },
     {
         8,
         15,
-        "  ¯®ª  ¨¬¥¥âáï à áè¨à¥­­ë© à §¤¥«.",
+        "  ïîêà èìååòñÿ ðàñøèðåííûé ðàçäåë.",
         TEXT_NORMAL
     },
     {
         8,
         16,
-        "- \8fਠãáâ ­®¢ª¥ ­¥«ì§ï ã¤ «¨âì ¯¥à¢ë© à áè¨à¥­­ë© à §¤¥« á ¤¨áª ",
+        "- Ïðè óñòàíîâêå íåëüçÿ óäàëèòü ïåðâûé ðàñøèðåííûé ðàçäåë ñ äèñêà",
         TEXT_NORMAL
     },
     {
         8,
         17,
-        "  ¯®ª  áãé¥áâ¢ãîâ ¤à㣨¥ à áè¨à¥­­ë¥ à §¤¥«ë.",
+        "  ïîêà ñóùåñòâóþò äðóãèå ðàñøèðåííûå ðàçäåëû.",
         TEXT_NORMAL
     },
     {
         8,
         18,
-        "- \8fਠãáâ ­®¢ª¥ ¯®¤¤¥à¦¨¢ ¥âáï â®«ìª® ä ©«®¢ ï á¨á⥬  FAT.",
+        "- Ïðè óñòàíîâêå ïîääåðæèâàåòñÿ òîëüêî ôàéëîâàÿ ñèñòåìà FAT.",
         TEXT_NORMAL
     },
     {
         8,
         19,
-        "- \8f஢¥àª  ä ©«®¢®© á¨á⥬렭¥ ®áãé¥á⢫ï¥âáï.",
+        "- Ïðîâåðêà ôàéëîâîé ñèñòåìû íå îñóùåñòâëÿåòñÿ.",
         TEXT_NORMAL
     },
     {
         8,
         23,
-        "\x07  \8d ¦¬¨â¥ ¢¢®¤ ¤«ï ãáâ ­®¢ª¨ ReactOS.",
+        "\x07  Íàæìèòå ENTER äëÿ óñòàíîâêè ReactOS.",
         TEXT_NORMAL
     },
     {
         8,
         25,
-        "\x07  \8d ¦¬¨â¥ F3 ¤«ï ¢ë室  ¨§ ãáâ ­®¢ª¨ ReactOS.",
+        "\x07  Íàæìèòå F3 äëÿ âûõîäà èç óñòàíîâêè ReactOS.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   \82\82\8e\84 = \8fத®«¦¥­¨¥   F3 = \82ë室",
+        "   ENTER = Ïðîäîëæåíèå   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -222,79 +222,79 @@ static MUI_ENTRY ruRULicensePageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         6,
-        "\8b¨æ¥­§¨ï:",
+        "Ëèöåíçèÿ:",
         TEXT_HIGHLIGHT
     },
     {
         8,
         8,
-        "ReactOS «¨æ¥­§¨à®¢ ­  ¢ á®®â¢¥âá⢨¨ á \8eâªàëâ묠«¨æ¥­§¨®­­ë¬",
+        "ReactOS ëèöåíçèðîâàíà â ñîîòâåòñòâèè ñ Îòêðûòûì ëèöåíçèîííûì",
         TEXT_NORMAL
     },
     {
         8,
         9,
-        "ᮣ« è¥­¨¥¬ GNU GPL ¨ á®¤¥à¦¨â ª®¬¯®­¥­âë à á¯à®áâ࠭塞ë¥",
+        "ñîãëàøåíèåì GNU GPL è ñîäåðæèò êîìïîíåíòû ðàñïðîñòðàíÿåìûå",
         TEXT_NORMAL
     },
     {
         8,
         10,
-        "á á®¢¬¥á⨬묨 «¨æ¥­§¨ï¬¨: X11, BSD ¨ GNU LGPL.",
+        "ñ ñîâìåñòèìûìè ëèöåíçèÿìè: X11, BSD è GNU LGPL.",
         TEXT_NORMAL
     },
     {
         8,
         11,
-        "\82ᥠ¯à®£à ¬¬­®¥ ®¡¥á¯¥ç¥­¨¥ ¢å®¤ï饥 ¢ á¨á⥬ã ReactOS ¢ë¯ã饭®",
+        "Âñå ïðîãðàììíîå îáåñïå÷åíèå âõîäÿùåå â ñèñòåìó ReactOS âûïóùåíî",
         TEXT_NORMAL
     },
     {
         8,
         12,
-        "¯®¤ \8eâªàëâ묠«¨æ¥­§¨®­­ë¬ á®£« è¥­¨¥¬ GNU GPL á á®åà ­¥­¨¥¬",
+        "ïîä Îòêðûòûì ëèöåíçèîííûì ñîãëàøåíèåì GNU GPL ñ ñîõðàíåíèåì",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "¯¥à¢®­ ç «ì­®© «¨æ¥­§¨¨.",
+        "ïåðâîíà÷àëüíîé ëèöåíçèè.",
         TEXT_NORMAL
     },
     {
         8,
         15,
-        "\84 ­­®¥ ¯à®£à ¬¬­®¥ ®¡¥á¯¥ç¥­¨¥ ¯®áâ ¢«ï¥âáï \81\85\87 \83\80\90\80\8d\92\88\88 ¨ ¡¥§ ®£à ­¨ç¥­¨©",
+        "Äàííîå ïðîãðàììíîå îáåñïå÷åíèå ïîñòàâëÿåòñÿ ÁÅÇ ÃÀÐÀÍÒÈÈ è áåç îãðàíè÷åíèé",
         TEXT_NORMAL
     },
     {
         8,
         16,
-        "¢ ¨á¯®«ì§®¢ ­¨¨, ª ª ¢ ¬¥áâ­®¬, â ª ¨ ¬¥¦¤ã­ à®¤­®¬ ¯à ¢¥.",
+        "â èñïîëüçîâàíèè, êàê â ìåñòíîì, òàê è ìåæäóíàðîäíîì ïðàâå.",
         TEXT_NORMAL
     },
     {
         8,
         17,
-        "\8b¨æ¥­§¨ï ReactOS à §à¥è ¥â ¯¥à¥¤ ç㠯தãªâ  âà¥â쨬 «¨æ ¬.",
+        "Ëèöåíçèÿ ReactOS ðàçðåøàåò ïåðåäà÷ó ïðîäóêòà òðåòüèì ëèöàì.",
         TEXT_NORMAL
     },
     {
         8,
         18,
-        "\85᫨ ¯® ª ª®¬-«¨¡® ¯à¨ç¨­ ¬ ¢ë ­¥ ¯®«ã稫¨ ª®¯¨î \8eâªàë⮣®",
+        "Åñëè ïî êàêîì-ëèáî ïðè÷èíàì âû íå ïîëó÷èëè êîïèþ Îòêðûòîãî",
         TEXT_NORMAL
     },
     {
         8,
         19,
-        "«¨æ¥­§¨®­­®£® á®£« è¥­¨ï GNU ¢¬¥á⥠á ReactOS, ¯®á¥â¨â¥",
+        "ëèöåíçèîííîãî ñîãëàøåíèÿ GNU âìåñòå ñ ReactOS, ïîñåòèòå",
         TEXT_NORMAL
     },
     {
@@ -306,31 +306,31 @@ static MUI_ENTRY ruRULicensePageEntries[] =
     {
         8,
         22,
-        "\83 à ­â¨¨:",
+        "Ãàðàíòèè:",
         TEXT_HIGHLIGHT
     },
     {
         8,
         24,
-        "\9d⮠᢮¡®¤­®¥ ¯à®£à ¬¬­®¥ ®¡¥á¯¥ç¥­¨¥; á¬. ¨áâ®ç­¨ª ¤«ï ¯à®á¬®âà  ¯à ¢.",
+        "Ýòî ñâîáîäíîå ïðîãðàììíîå îáåñïå÷åíèå; ñì. èñòî÷íèê äëÿ ïðîñìîòðà ïðàâ.",
         TEXT_NORMAL
     },
     {
         8,
         25,
-        "\8d\85\92 \8d\88\8a\80\8a\88\95 \83\80\90\80\8d\92\88\89; ­¥â £ à ­â¨¨ \92\8e\82\80\90\8d\8e\83\8e \91\8e\91\92\8e\9f\8d\88\9f ¨«¨",
+        "ÍÅÒ ÍÈÊÀÊÈÕ ÃÀÐÀÍÒÈÉ; íåò ãàðàíòèè ÒÎÂÀÐÍÎÃΠÑÎÑÒÎßÍÈß èëè",
         TEXT_NORMAL
     },
     {
         8,
         26,
-        "\8f\90\88\83\8e\84\8d\8e\91\92\88 \84\8b\9f \8a\8e\8d\8a\90\85\92\8d\9b\95 \96\85\8b\85\89",
+        "ÏÐÈÃÎÄÍÎÑÒÈ ÄËß ÊÎÍÊÐÅÒÍÛÕ ÖÅËÅÉ",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   \82\82\8e\84 = \82®§¢à â",
+        "   ENTER = Âîçâðàò",
         TEXT_STATUS
     },
     {
@@ -346,84 +346,84 @@ static MUI_ENTRY ruRUDevicePageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "\82 á¯¨áª¥ ­¨¦¥ ¯à¨¢¥¤¥­ë ãáâனá⢠ ¨ ¨å ¯ à ¬¥âàë.",
+        " ñïèñêå íèæå ïðèâåäåíû óñòðîéñòâà è èõ ïàðàìåòðû.",
         TEXT_NORMAL
     },
     {
         8,
         11,
-        "       \8a®¬¯ìîâ¥à:",
+        "       Êîìïüþòåð:",
         TEXT_NORMAL
     },
     {
         8,
         12,
-        "        \9dªà ­:",
+        "        Ýêðàí:",
         TEXT_NORMAL,
     },
     {
         8,
         13,
-        "       \8a« ¢¨ âãà :",
+        "       Êëàâèàòóðà:",
         TEXT_NORMAL
     },
     {
         8,
         14,
-        "\90 áª« ¤ª  ª« ¢¨ âãàë:",
+        "Ðàñêëàäêà êëàâèàòóðû:",
         TEXT_NORMAL
     },
     {
         8,
         16,
-        "         \8fਬ¥­¨âì:",
+        "         Ïðèìåíèòü:",
         TEXT_NORMAL
     },
     {
         25,
-        16, "\8fਬ¥­¨âì ¤ ­­ë¥ ¯ à ¬¥âàë ãáâனáâ¢",
+        16, "Ïðèìåíèòü äàííûå ïàðàìåòðû óñòðîéñòâ",
         TEXT_NORMAL
     },
     {
         6,
         19,
-        "\82ë ¬®¦¥â¥ ¨§¬¥­¨âì ¯ à ¬¥âàë ãáâனá⢠­ ¦¨¬ ï ª« ¢¨è¨ \82\82\85\90\95 ¨ \82\8d\88\87",
+        "Âû ìîæåòå èçìåíèòü ïàðàìåòðû óñòðîéñòâ íàæèìàÿ êëàâèøè ÂÂÅÐÕ è ÂÍÈÇ",
         TEXT_NORMAL
     },
     {
         6,
         20,
-        "¤«ï ¢ë¤¥«¥­¨ï í«¥¬¥­â  ¨ ª« ¢¨èã \82\82\8e\84 ¤«ï ¢ë¡®à  ¤à㣨堢 à¨ ­â®¢",
+        "äëÿ âûäåëåíèÿ ýëåìåíòà è êëàâèøó ENTER äëÿ âûáîðà äðóãèõ âàðèàíòîâ",
         TEXT_NORMAL
     },
     {
         6,
         21,
-        "¯ à ¬¥â஢.",
+        "ïàðàìåòðîâ.",
         TEXT_NORMAL
     },
     {
         6,
         23,
-        "\8a®£¤  ¢á¥ ¯ à ¬¥âàë ®¯à¥¤¥«¥­ë, ¢ë¡¥à¨â¥ \"\8fਬ¥­¨âì ¤ ­­ë¥ ¯ à ¬¥âàë ãáâனáâ¢\"",
+        "Êîãäà âñå ïàðàìåòðû îïðåäåëåíû, âûáåðèòå \"Ïðèìåíèòü äàííûå ïàðàìåòðû óñòðîéñòâ\"",
         TEXT_NORMAL
     },
     {
         6,
         24,
-        "¨ ­ ¦¬¨â¥ \82\82\8e\84.",
+        "è íàæìèòå ENTER.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   \82\82\8e\84 = \8fத®«¦¥­¨¥   F3 = \82ë室",
+        "   ENTER = Ïðîäîëæåíèå   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -439,55 +439,55 @@ static MUI_ENTRY ruRURepairPageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "ReactOS ­ å®¤¨âáï ¢ à ­­¥© áâ ¤¨¨ à §à ¡®âª¨ ¨ ­¥ ¯®¤¤¥à¦¨¢ ¥â ¢á¥",
+        "ReactOS íàõîäèòñÿ â ðàííåé ñòàäèè ðàçðàáîòêè è íå ïîääåðæèâàåò âñå",
         TEXT_NORMAL
     },
     {
         6,
         9,
-        "ä㭪樨 ¤«ï ¯®«­®© á®¢¬¥á⨬®á⨠á ãâ ­ ¢«¨¢ ¥¬ë¬¨ ¯à¨«®¦¥­¨ï¬¨.",
+        "ôóíêöèè äëÿ ïîëíîé ñîâìåñòèìîñòè ñ óòàíàâëèâàåìûìè ïðèëîæåíèÿìè.",
         TEXT_NORMAL
     },
     {
         6,
         12,
-        "\94ã­ªæ¨ï ¢®áâ ­®¢«¥­¨ï ¢ ¤ ­­ë¬ ¬®¬¥­â ®âáãâáâ¢ã¥â.",
+        "Ôóíêöèÿ âîñòàíîâëåíèÿ â äàííûì ìîìåíò îòñóòñòâóåò.",
         TEXT_NORMAL
     },
     {
         8,
         15,
-        "\x07  \8d ¦¬¨â¥ U ¤«ï ®¡­®¢«¥­¨ï \8e\91.",
+        "\x07  Íàæìèòå U äëÿ îáíîâëåíèÿ ÎÑ.",
         TEXT_NORMAL
     },
     {
         8,
         17,
-        "\x07  \8d ¦¬¨â¥ R ¤«ï § ¯ã᪠ ª®­á®«¨ ¢®áâ ­®¢«¥­¨ï.",
+        "\x07  Íàæìèòå R äëÿ çàïóñêà êîíñîëè âîñòàíîâëåíèÿ.",
         TEXT_NORMAL
     },
     {
         8,
         19,
-        "\x07  \8d ¦¬¨â¥ ESC ¤«ï ¢®§¢à â  ­  £« ¢­ãî áâà ­¨æã.",
+        "\x07  Íàæìèòå ESC äëÿ âîçâðàòà íà ãëàâíóþ ñòðàíèöó.",
         TEXT_NORMAL
     },
     {
         8,
         21,
-        "\x07  \8d ¦¬¨â¥ \82\82\8e\84 ¤«ï ¯¥à¥§ £à㧪¨ ª®¬¯ìîâ¥à .",
+        "\x07  Íàæìèòå ENTER äëÿ ïåðåçàãðóçêè êîìïüþòåðà.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   ESC = \83« ¢­ ï áâà ­¨æ   \82\82\8e\84 = \8f¥à¥§ £à㧪 ",
+        "   ESC = Ãëàâíàÿ ñòðàíèöà  ENTER = Ïåðåçàãðóçêà",
         TEXT_STATUS
     },
     {
@@ -502,43 +502,43 @@ static MUI_ENTRY ruRUComputerPageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "\82ë å®â¨â¥ ¨§¬¥­¨âì ãáâ ­ ¢«¨¢ ¥¬ë© â¨¯ ª®¬¯ìîâ¥à .",
+        "Âû õîòèòå èçìåíèòü óñòàíàâëèâàåìûé òèï êîìïüþòåðà.",
         TEXT_NORMAL
     },
     {
         8,
         10,
-        "\x07  \8d ¦¬¨â¥ ª« ¢¨èã \82\82\85\90\95 ¨«¨ \82\8d\88\87 ¤«ï ¢ë¡®à  ¯à¥¤¯®çâ¨â¥«ì­®£® â¨¯  ª®¬¯ìîâ¥à .",
+        "\x07  Íàæìèòå êëàâèøó ÂÂÅÐÕ èëè ÂÍÈÇ äëÿ âûáîðà ïðåäïî÷òèòåëüíîãî òèïà êîìïüþòåðà.",
         TEXT_NORMAL
     },
     {
         8,
         11,
-        "   \87 â¥¬ ­ ¦¬¨â¥ \82\82\8e\84.",
+        "   Çàòåì íàæìèòå ENTER.",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "\x07  \8d ¦¬¨â¥ ª« ¢¨èã ESC ¤«ï ¢®§¢à â  ª ¯à¥¤ë¤ã饩 áâà ­¨æ¥ ¡¥§ ¨§¬¥­¥­¨ï",
+        "\x07  Íàæìèòå êëàâèøó ESC äëÿ âîçâðàòà ê ïðåäûäóùåé ñòðàíèöå áåç èçìåíåíèÿ",
         TEXT_NORMAL
     },
     {
         8,
         14,
-        "   â¨¯  ª®¬¯ìîâ¥à .",
+        "   òèïà êîìïüþòåðà.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   \82\82\8e\84 = \8fத®«¦¥­¨¥   ESC = \8e⬥­    F3 = \82ë室",
+        "   ENTER = Ïðîäîëæåíèå   ESC = Îòìåíà   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -554,31 +554,31 @@ static MUI_ENTRY ruRUFlushPageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         10,
         6,
-        "\91¨á⥬  ¯à®¢¥àï¥â ¢á¥ «¨ ¤ ­­ë¥ § ¯¨á ­ë ­  ¤¨áª",
+        "Ñèñòåìà ïðîâåðÿåò âñå ëè äàííûå çàïèñàíû íà äèñê",
         TEXT_NORMAL
     },
     {
         10,
         8,
-        "\9dâ® ¬®¦¥â § ­ïâì ¬¨­ãâã",
+        "Ýòî ìîæåò çàíÿòü ìèíóòó",
         TEXT_NORMAL
     },
     {
         10,
         9,
-        "\8f®á«¥ § ¢¥à襭¨ï ª®¬¯ìîâ¥à ¡ã¤¥â  ¢â®¬ â¨ç¥áª¨ ¯¥à¥§ £à㦥­",
+        "Ïîñëå çàâåðøåíèÿ êîìïüþòåð áóäåò àâòîìàòè÷åñêè ïåðåçàãðóæåí",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   \8eç¨á⪠ ª¥è ",
+        "   Î÷èñòêà êåøà",
         TEXT_STATUS
     },
     {
@@ -594,37 +594,37 @@ static MUI_ENTRY ruRUQuitPageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         10,
         6,
-        "ReactOS ãáâ ­®¢«¥­ ­¥ ¯®«­®áâìî",
+        "ReactOS óñòàíîâëåí íå ïîëíîñòüþ",
         TEXT_NORMAL
     },
     {
         10,
         8,
-        "\88§¢«¥ª¨â¥ £¨¡ª¨© ¤¨áª ¨§ ¤¨áª®¢®¤  A: ¨",
+        "Èçâëåêèòå ãèáêèé äèñê èç äèñêîâîäà A: è",
         TEXT_NORMAL
     },
     {
         10,
         9,
-        "¢á¥ CD-ROM ¨§ CD-¤¨áª®¢®¤®¢.",
+        "âñå CD-ROM èç CD-äèñêîâîäîâ.",
         TEXT_NORMAL
     },
     {
         10,
         11,
-        "\8d ¦¬¨â¥ \82\82\8e\84 ¤«ï ¯¥à¥§ £à㧪¨ ª®¬¯ìîâ¥à .",
+        "Íàæìèòå ENTER äëÿ ïåðåçàãðóçêè êîìïüþòåðà.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   \8f®¦ «ã©áâ  ¯®¤®¦¤¨â¥ ...",
+        "   Ïîæàëóéñòà ïîäîæäèòå ...",
         TEXT_STATUS,
     },
     {
@@ -640,42 +640,42 @@ static MUI_ENTRY ruRUDisplayPageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "\82ë å®â¨â¥ ¨§¬¥­¨âì ãáâ ­ ¢«¨¢ ¥¬ë© â¨¯ íªà ­ .",
+        "Âû õîòèòå èçìåíèòü óñòàíàâëèâàåìûé òèï ýêðàíà.",
         TEXT_NORMAL
     },
     {   8,
         10,
-         "\x07  \8d ¦¬¨â¥ ª« ¢¨è¨ \82\82\8e\90\95 ¨«¨ \82\8d\88\87 ¤«ï ¢ë¡®à  â¨¯  íªà ­ .",
+         "\x07  Íàæìèòå êëàâèøè ÂÂÎÐÕ èëè ÂÍÈÇ äëÿ âûáîðà òèïà ýêðàíà.",
          TEXT_NORMAL
     },
     {
         8,
         11,
-        "   \87 â¥¬ ­ ¦¬¨â¥ \82\82\8e\84.",
+        "   Çàòåì íàæìèòå ENTER.",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "\x07  \8d ¦¬¨â¥ ª« ¢¨èã ESC ¤«ï ¢®§¢à â  ª ¯à¥¤ë¤ã饩 áâà ­¨æ¥ ¡¥§ ¨§¬¥­¥­¨ï",
+        "\x07  Íàæìèòå êëàâèøó ESC äëÿ âîçâðàòà ê ïðåäûäóùåé ñòðàíèöå áåç èçìåíåíèÿ",
         TEXT_NORMAL
     },
     {
         8,
         14,
-        "   â¨¯  íªà ­ .",
+        "   òèïà ýêðàíà.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   \82\82\8e\84 = \8fத®«¦¥­¨¥   ESC = \8e⬥­    F3 = \82ë室",
+        "   ENTER = Ïðîäîëæåíèå   ESC = Îòìåíà   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -691,37 +691,37 @@ static MUI_ENTRY ruRUSuccessPageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         10,
         6,
-        "\8eá­®¢­ë¥ ª®¬¯®­¥­âë ReactOS ¡ë«¨ ãᯥ譮 ãáâ ­®¢«¥­ë.",
+        "Îñíîâíûå êîìïîíåíòû ReactOS áûëè óñïåøíî óñòàíîâëåíû.",
         TEXT_NORMAL
     },
     {
         10,
         8,
-        "\88§¢«¥ª¨â¥ £¨¡ª¨© ¤¨áª ¨§ ¤¨áª®¢®¤  A: ¨",
+        "Èçâëåêèòå ãèáêèé äèñê èç äèñêîâîäà A: è",
         TEXT_NORMAL
     },
     {
         10,
         9,
-        "¢á¥ CD-ROM ¨§ CD-¤¨áª®¢®¤®¢.",
+        "âñå CD-ROM èç CD-äèñêîâîäîâ.",
         TEXT_NORMAL
     },
     {
         10,
         11,
-        "\8d ¦¬¨â¥ \82\82\8e\84 ¤«ï ¯¥à¥§ £à㧪¨ ª®¬¯ìîâ¥à .",
+        "Íàæìèòå ENTER äëÿ ïåðåçàãðóçêè êîìïüþòåðà.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   \82\82\8e\84 = \8f¥à¥§ £à㧨âì ª®¬¯ìîâ¥à",
+        "   ENTER = Ïåðåçàãðóçèòü êîìïüþòåð",
         TEXT_STATUS
     },
     {
@@ -737,37 +737,37 @@ static MUI_ENTRY ruRUBootPageEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "\8fணࠬ¬  ãáâ ­®¢ª¨ ­¥ á¬®£«  ãáâ ­®¢¨âì § £àã§ç¨ª ­ ",
+        "Ïðîãðàììà óñòàíîâêè íå ñìîãëà óñòàíîâèòü çàãðóç÷èê íà",
         TEXT_NORMAL
     },
     {
         6,
         9,
-        "¦¥á⪨© ¤¨áª ¢ è¥£® ª®¬¯ìîâ¥à .",
+        "æåñòêèé äèñê âàøåãî êîìïüþòåðà.",
         TEXT_NORMAL
     },
     {
         6,
         13,
-        "\8f®¦ «ã©áâ  ¢á⠢⥠®âä®à¬ â¨à®¢ ­­ë© £¨¡ª¨© ¤¨áª ¢ ¤¨áª®¢®¤ A: ¨",
+        "Ïîæàëóéñòà âñòàâòå îòôîðìàòèðîâàííûé ãèáêèé äèñê â äèñêîâîä A: è",
         TEXT_NORMAL
     },
     {
         6,
         14,
-        "­ ¦¬¨â¥ \82\82\8e\84.",
+        "íàæìèòå ENTER.",
         TEXT_NORMAL,
     },
     {
         0,
         0,
-        "   \82\82\8e\84 = \8fத®«¦¥­¨¥   F3 = \82ë室",
+        "   ENTER = Ïðîäîëæåíèå   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -784,49 +784,49 @@ static MUI_ENTRY ruRUSelectPartitionEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "The list below shows existing partitions and unused disk",
+        " ñïèñêå íèæå ïîêàçàíû ñóùåñòâóþùèå ðàçäåëû è íåèñïîëüçóåìîå ïðîñòðàíñòâî",
         TEXT_NORMAL
     },
     {
         6,
         9,
-        "space for new partitions.",
+        "äëÿ íîâîãî ðàçäåëà.",
         TEXT_NORMAL
     },
     {
         8,
         11,
-        "\x07  Press UP or DOWN to select a list entry.",
+        "\x07  Íàæìèòå ÂÂÅÐÕ èëè ÂÍÈÇ äëÿ âûáîðà ýëåìåíòà.",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "\x07  Press ENTER to install ReactOS onto the selected partition.",
+        "\x07  Íàæìèòå ENTER äëÿ óñòàíîâêè ReactOS íà âûäåëåííûé ðàçäåë.",
         TEXT_NORMAL
     },
     {
         8,
         15,
-        "\x07  Press C to create a new partition.",
+        "\x07  Íàæìèòå C äëÿ ñîçäàíèÿ íîâîãî ðàçäåëà.",
         TEXT_NORMAL
     },
     {
         8,
         17,
-        "\x07  Press D to delete an existing partition.",
+        "\x07  Íàæìèòå D äëÿ óäàëåíèÿ ñóùåñòâóþùåãî ðàçäåëà.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   Please wait...",
+        "   Ïîæàëóéñòà ïîäîæäèòå...",
         TEXT_STATUS
     },
     {
@@ -842,25 +842,25 @@ static MUI_ENTRY ruRUFormatPartitionEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "Format partition",
+        "Ôîðìàòèðîâàíèå ðàçäåëà",
         TEXT_NORMAL
     },
     {
         6,
         10,
-        "Setup will now format the partition. Press ENTER to continue.",
+        "Äëÿ óñòàíîâêè ðàçäåë áóäåò îòôîðìàòèðîâàí. Íàæìèòå ENTER äëÿ ïðîäîëæåíèÿ.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   ENTER = Continue   F3 = Quit",
+        "   ENTER = Ïðîäîëæåíèå   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -876,43 +876,43 @@ static MUI_ENTRY ruRUInstallDirectoryEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "Setup installs ReactOS files onto the selected partition. Choose a",
+        "Óñòàíîâêà ôàéëîâ ReactOS íà âûáðàííûé ðàçäåë. Âûáåðèòå äèðåêòîðèþ",
         TEXT_NORMAL
     },
     {
         6,
         9,
-        "directory where you want ReactOS to be installed:",
+        "â êîòîðóþ áóäåò óñòàíîâëåíà ñèñòåìà:",
         TEXT_NORMAL
     },
     {
         6,
         14,
-        "To change the suggested directory, press BACKSPACE to delete",
+        "×òîáû èçìåíèòü âûáðàííóþ äèðåêòîðèþ íàæìèòå BACKSPACE è óäàëèòå ñèìâîëû,",
         TEXT_NORMAL
     },
     {
         6,
         15,
-        "characters and then type the directory where you want ReactOS to",
+        "à çà òåì íàáåðèòå íîâîå èìÿ äèðåêòîðèè äëÿ óñòàíîâêè ReactOS",
         TEXT_NORMAL
     },
     {
         6,
         16,
-        "be installed.",
+        " ",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   ENTER = Continue   F3 = Quit",
+        "   ENTER = Ïðîäîëæèòü   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -928,31 +928,31 @@ static MUI_ENTRY ruRUFileCopyEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         11,
         12,
-        "Please wait while ReactOS Setup copies files to your ReactOS",
+        "Ïîæàëóéñòà ïîäîæäèòå ïîêà ïðîãðàììà óñòàíîâêè ñêîïèðóåò ôàéëû ReactOS",
         TEXT_NORMAL
     },
     {
         30,
         13,
-        "installation folder.",
+        "â óñòàíîâî÷íóþ äèðåêòîðèþ.",
         TEXT_NORMAL
     },
     {
         20,
         14,
-        "This may take several minutes to complete.",
+        "Ýòî ìîæåò çàíÿòü íåñêîëüêî ìèíóò.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "                                                           \xB3 Please wait...    ",
+        "                                                           \xB3 Ïîæàëóéñòà ïîäîæäèòå...    ",
         TEXT_STATUS
     },
     {
@@ -968,37 +968,37 @@ static MUI_ENTRY ruRUBootLoaderEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "Setup is installing the boot loader",
+        "Óñòàíîâêà çàãðóç÷èêà ReactOS",
         TEXT_NORMAL
     },
     {
         8,
         12,
-        "Install bootloader on the harddisk (MBR).",
+        "Óñòàíîâêà íà æåñòêèé äèñê (MBR).",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "Install bootloader on a floppy disk.",
+        "Óñòàíîâêà íà ãèáêèé äèñê.",
         TEXT_NORMAL
     },
     {
         8,
         14,
-        "Skip install bootloader.",
+        "Íå óñòàíàâëèâàòü çàãðóç÷èê.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   ENTER = Continue   F3 = Quit",
+        "   ENTER = Ïðîäîëæèòü   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -1014,43 +1014,43 @@ static MUI_ENTRY ruRUKeyboardSettingsEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "You want to change the type of keyboard to be installed.",
+        "Èçìåíåíèå òèïà êëàâèàòóðû.",
         TEXT_NORMAL
     },
     {
         8,
         10,
-        "\x07  Press the UP or DOWN key to select the desired keyboard type.",
+        "\x07  Íàæìèòå ÂÂÅÐÕ èëè ÂÍÈÇ äëÿ âûáîðà íóæíîãî òèïà êëàâèàòóðû.",
         TEXT_NORMAL
     },
     {
         8,
         11,
-        "   Then press ENTER.",
+        "   Çàòåì íàæìèòå ENTER.",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "\x07  Press the ESC key to return to the previous page without changing",
+        "\x07  Íàæìèòå êëàâèøó ESC äëÿ âîçâðàòà ê ïðåäûäóùåé ñòðàíèöå áåç èçìåíåíèÿ",
         TEXT_NORMAL
     },
     {
         8,
         14,
-        "   the keyboard type.",
+        "   òèïà êëàâèàòóðû.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   ENTER = Continue   ESC = Cancel   F3 = Quit",
+        "   ENTER = Ïðîäîëæèòü   ESC = Îòìåíà   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -1066,43 +1066,43 @@ static MUI_ENTRY ruRULayoutSettingsEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "You want to change the keyboard layout to be installed.",
+        "Âûáîð óñòàíàâëèâàåìîé ðàñêëàäêè êëàâèàòóðû.",
         TEXT_NORMAL
     },
     {
         8,
         10,
-        "\x07  Press the UP or DOWN key to select the desired keyboard",
+        "\x07  Íàæìèòå ÂÂÅÐÕ èëè ÂÍÈÇ äëÿ âûáîðà íóæíîé ðàñêëàäêè",
         TEXT_NORMAL
     },
     {
         8,
         11,
-        "    layout. Then press ENTER.",
+        "    êëàâèàòóðû. Çàòåì íàæìèòå ENTER.",
         TEXT_NORMAL
     },
     {
         8,
         13,
-        "\x07  Press the ESC key to return to the previous page without changing",
+        "\x07  Íàæìèòå êëàâèøó ESC äëÿ âîçâðàòà ê ïðåäûäóùåé ñòðàíèöå áåç",
         TEXT_NORMAL
     },
     {
         8,
         14,
-        "   the keyboard layout.",
+        "   èçìåíåíèÿ ðàñêëàäêè êëàâèàòóðû.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   ENTER = Continue   ESC = Cancel   F3 = Quit",
+        "   ENTER = Ïðîäîëæèòü   ESC = Îòìåíà   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -1119,19 +1119,19 @@ static MUI_ENTRY ruRUPrepareCopyEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "Setup prepares your computer for copying the ReactOS files. ",
+        "Ïîäãîòîâêà âàøåãî êîìïüþòåðà ê êîïèðîâàíèþ ôàéëîâ ReactOS. ",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   Building the file copy list...",
+        "   Ïîäãîòîâêà ñïèñêà êîïèðóåìûõ ôàéëîâ...",
         TEXT_STATUS
     },
     {
@@ -1148,37 +1148,37 @@ static MUI_ENTRY ruRUSelectFSEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         17,
-        "Select a file system from the list below.",
+        "Âûáåðèòå ôàéëîâóþ ñèñòåìó èç ñïèñêà íèæå.",
         0
     },
     {
         8,
         19,
-        "\x07  Press UP or DOWN to select a file system.",
+        "\x07  Íàæìèòå ÂÂÅÐÕ èëè ÂÍÈÇ äëÿ âûáîðà ôàéëîâîé ñèñòåìû.",
         0
     },
     {
         8,
         21,
-        "\x07  Press ENTER to format the partition.",
+        "\x07  Íàæìèòå ENTER äëÿ ôîðìàòèðîâàíèÿ ðàçäåëà.",
         0
     },
     {
         8,
         23,
-        "\x07  Press ESC to select another partition.",
+        "\x07  Íàæìèòå ESC äëÿ âûáîðà äðóãîãî ðàçäåëà.",
         0
     },
     {
         0,
         0,
-        "   ENTER = Continue   ESC = Cancel   F3 = Quit",
+        "   ENTER = Ïðîäîëæèòü   ESC = Îòìåíà   F3 = Âûõîä",
         TEXT_STATUS
     },
 
@@ -1195,37 +1195,37 @@ static MUI_ENTRY ruRUDeletePartitionEntries[] =
     {
         4,
         3,
-        " \93áâ ­®¢ª  ReactOS " KERNEL_VERSION_STR " ",
+        " Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "You have chosen to delete the partition",
+        "Âû âûáðàëè óäàëåíèå ðàçäåëà.",
         TEXT_NORMAL
     },
     {
         8,
         18,
-        "\x07  Press D to delete the partition.",
+        "\x07  Íàæìèòå D äëÿ óäàëåíèÿ ðàçäåëà.",
         TEXT_NORMAL
     },
     {
         11,
         19,
-        "WARNING: All data on this partition will be lost!",
+        "ÂÍÈÌÀÍÈÅ: Âñå äàííûå ñ ýòîãî ðàçäåëà áóäóò ïîòåðÿíû!",
         TEXT_NORMAL
     },
     {
         8,
         21,
-        "\x07  Press ESC to cancel.",
+        "\x07  Íàæìèòå ESC äëÿ îòìåíû.",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   D = Delete Partition   ESC = Cancel   F3 = Quit",
+        "   D = Óäàëèòü ðàçäåë   ESC = Îòìåíà   F3 = Âûõîä",
         TEXT_STATUS
     },
     {
@@ -1241,19 +1241,19 @@ static MUI_ENTRY ruRURegistryEntries[] =
     {
         4,
         3,
-        " ReactOS " KERNEL_VERSION_STR " Setup ",
+        "Óñòàíîâêà ReactOS " KERNEL_VERSION_STR " ",
         TEXT_UNDERLINE
     },
     {
         6,
         8,
-        "Setup is updating the system configuration. ",
+        "Ïðîãðàììà óñòàíîâêè îáíîâëÿåò êîíôèãóðàöèþ ñèñòåìû. ",
         TEXT_NORMAL
     },
     {
         0,
         0,
-        "   Creating registry hives...",
+        "   Ñîçäàíèå êóñòîâ ñèñòåìíîãî ðååñòðà...",
         TEXT_STATUS
     },
     {
@@ -1269,68 +1269,68 @@ MUI_ERROR ruRUErrorEntries[] =
 {
     {
         //ERROR_NOT_INSTALLED
-        "ReactOS is not completely installed on your\n"
-            "computer. If you quit Setup now, you will need to\n"
-            "run Setup again to install ReactOS.\n"
-            "\n"
-            "  \x07  Press ENTER to continue Setup.\n"
-            "  \x07  Press F3 to quit Setup.",
-            "F3= Quit  ENTER = Continue"
+        "ReactOS íå áûë ïîëíîñòüþ óñòàíîâëåí íà âàø\n"
+            "êîìïüþòåð. Åñëè âû âûéäèòå èç óñòàíîâêè ñåé÷àñ,\n"
+            "òî âàì íóæíî çàïóñòèòü ïðîãðàììó óñòàíîâêè ñíîâà,\n"
+            "åñëè âû õîòèòå óñòàíîâèòü ReactOS\n"
+            "  \x07  Íàæìèòå ENTER äëÿ ïðîäîëæåíèÿ óñòàíîâêè.\n"
+            "  \x07  Íàæìèòå F3 âûõîäà èç óñòàíîâêè.",
+            "F3 = Âûõîä  ENTER = Ïðîäîëæèòü"
     },
     {
         //ERROR_NO_HDD
-        "Setup could not find a harddisk.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü íàéòè æåñòêèé äèñê.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_NO_SOURCE_DRIVE
-        "Setup could not find its source drive.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü íàéòè óñòàíîâî÷íûé äèñê.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_LOAD_TXTSETUPSIF
-        "Setup failed to load the file TXTSETUP.SIF.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü çàãðóçèòü ôàéë TXTSETUP.SIF.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_CORRUPT_TXTSETUPSIF
         "Setup found a corrupt TXTSETUP.SIF.\n",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_SIGNATURE_TXTSETUPSIF,
         "Setup found an invalid signature in TXTSETUP.SIF.\n",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_DRIVE_INFORMATION
         "Setup could not retrieve system drive information.\n",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_WRITE_BOOT,
         "Setup failed to install FAT bootcode on the system partition.",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_LOAD_COMPUTER,
-        "Setup failed to load the computer type list.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü çàãðóçèòü ñïèñîê òèïîâ êîìïüþòåðà.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_LOAD_DISPLAY,
-        "Setup failed to load the display settings list.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü çàãðóçèòü ñïèñîê ðåæèìîâ ýêðàíà.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_LOAD_KEYBOARD,
-        "Setup failed to load the keyboard type list.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü çàãðóçèòü ñïèñîê òèïîâ êëàâèàòóðû.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_LOAD_KBLAYOUT,
-        "Setup failed to load the keyboard layout list.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü çàãðóçèòü ñïèñîê ðàñêëàäîê êëàâèàòóðû.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_WARN_PARTITION,
@@ -1339,116 +1339,121 @@ MUI_ERROR ruRUErrorEntries[] =
                  "\n"
                  "Creating or deleting partitions can destroy the partiton table.\n"
                  "\n"
-                 "  \x07  Press F3 to quit Setup."
-                 "  \x07  Press ENTER to continue.",
-          "F3= Quit  ENTER = Continue"
+                 "  \x07  Íàæìèòå F3 äëÿ âûõîäà èç óñòàíîâêè."
+                 "  \x07  Íàæìèòå ENTER äëÿ ïðîäîëæåíèÿ.",
+          "F3 = Âûõîä  ENTER = Ïðîäîëæèòü"
     },
     {
         //ERROR_NEW_PARTITION,
         "You can not create a new Partition inside\n"
                "of an already existing Partition!\n"
                "\n"
-               "  * Press any key to continue.",
+               "  * Íàæìèòå ëþáóþ êëàâèøó äëÿ ïðîäîëæåíèÿ.",
         NULL
     },
     {
         //ERROR_DELETE_SPACE,
         "You can not delete unpartitioned disk space!\n"
         "\n"
-        "  * Press any key to continue.",
+        "  * Íàæìèòå ëþáóþ êëàâèøó äëÿ ïðîäîëæåíèÿ.",
         NULL
     },
     {
         //ERROR_INSTALL_BOOTCODE,
         "Setup failed to install the FAT bootcode on the system partition.",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_NO_FLOPPY,
-        "No disk in drive A:.",
-        "ENTER = Continue"
+        "Íåò äèñêà â äèñêîâîäå A:.",
+        "ENTER = Ïðîäîëæèòü"
     },
     {
         //ERROR_UPDATE_KBSETTINGS,
         "Setup failed to update keyboard layout settings.",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_UPDATE_DISPLAY_SETTINGS,
         "Setup failed to update display registry settings.",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_IMPORT_HIVE,
         "Setup failed to import a hive file.",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_FIND_REGISTRY
         "Setup failed to find the registry data files.",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_CREATE_HIVE,
         "Setup failed to create the registry hives.",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_INITIALIZE_REGISTRY,
         "Setup failed to set the initialize the registry.",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_INVALID_CABINET_INF,
         "Cabinet has no valid inf file.\n",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_CABINET_MISSING,
-        "Cabinet not found.\n",
-        "ENTER = Reboot computer"
+        "Cabinet íå íàéäåí.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_CABINET_SCRIPT,
-        "Cabinet has no setup script.\n",
-        "ENTER = Reboot computer"
+        "Cabinet íå ñìîã íàéòè óñòàíîâî÷íûé ñêðèïò.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_COPY_QUEUE,
         "Setup failed to open the copy file queue.\n",
-        "ENTER = Reboot computer"
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_CREATE_DIR,
-        "Setup could not create install directories.",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü ñîçäàòü óñòàíîâî÷íûå äèðåêòîðèè.",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_TXTSETUP_SECTION,
-        "Setup failed to find the 'Directories' section\n"
-        "in TXTSETUP.SIF.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü íàéòè ñåêöèþ 'Directories'\n"
+        "â ôàéëå TXTSETUP.SIF.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_CABINET_SECTION,
-        "Setup failed to find the 'Directories' section\n"
-        "in the cabinet.\n",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü íàéòè ñåêöèþ 'Directories'\n"
+        "â cabinet.\n",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_CREATE_INSTALL_DIR
-        "Setup could not create the install directory.",
-        "ENTER = Reboot computer"
+        "Íå óäàëîñü ñîçäàòü äèðåêòîðèþ äëÿ óñòàíîâêè.",
+        "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_FIND_SETUPDATA,
-        "Setup failed to find the 'SetupData' section\n"
-                "in TXTSETUP.SIF.\n",
-                "ENTER = Reboot computer"
+        "Íå óäàëîñü íàéòè ñåêöèþ 'SetupData'\n"
+                "â ôàéëå TXTSETUP.SIF.\n",
+                "ENTER = Ïåðåçàãðóçêà"
     },
     {
         //ERROR_WRITE_PTABLE,
-        "Setup failed to write partition tables.\n"
+        "Íå óäàëîñü çàïèñàòü òàáëèöó ðàçäåëîâ.\n"
+        "ENTER = Ïåðåçàãðóçêà"
+    },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
         "ENTER = Reboot computer"
     },
     {
@@ -1457,6 +1462,7 @@ MUI_ERROR ruRUErrorEntries[] =
     }
 };
 
+
 MUI_PAGE ruRUPages[] =
 {
     {
@@ -1464,8 +1470,8 @@ MUI_PAGE ruRUPages[] =
         ruRULanguagePageEntries
     },
     {
-       START_PAGE,
-       ruRUWelcomePageEntries
+        START_PAGE,
+        ruRUWelcomePageEntries
     },
     {
         INSTALL_INTRO_PAGE,
index c1bf164..6ee8026 100644 (file)
@@ -1451,6 +1451,11 @@ MUI_ERROR svSEErrorEntries[] =
         "Setup failed to write partition tables.\n"
         "ENTER = Reboot computer"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index b38faf0..63def07 100644 (file)
@@ -1451,6 +1451,11 @@ MUI_ERROR ukUAErrorEntries[] =
         "Setup failed to write partition tables.\n"
         "ENTER = Reboot computer"
     },
+    {
+        //ERROR_ADDING_CODEPAGE,
+        "Setup failed to add codepage to registry.\n"
+        "ENTER = Reboot computer"
+    },
     {
         NULL,
         NULL
index 13b40c1..31173a0 100644 (file)
@@ -28,6 +28,9 @@
 #include "errorcode.h"
 #include "mui.h"
 
+#define NDEBUG
+#include <debug.h>
+
 #include "lang/en-US.h"
 #include "lang/de-DE.h"
 #include "lang/el-GR.h"
@@ -308,4 +311,99 @@ MUIDisplayError(ULONG ErrorNum, PINPUT_RECORD Ir, ULONG WaitEvent)
                WaitEvent);
 }
 
+static BOOLEAN
+AddCodepageToRegistry(PWCHAR ACPage, PWCHAR OEMCPage, PWCHAR MACCPage)
+{
+    OBJECT_ATTRIBUTES ObjectAttributes;
+    UNICODE_STRING KeyName;
+    UNICODE_STRING ValueName;
+    HANDLE KeyHandle;
+    NTSTATUS Status;
+
+    // Open the nls codepage key
+    RtlInitUnicodeString(&KeyName,
+                                L"\\Registry\\Machine\\SYSTEM\\CurrentControlSet\\Control\\NLS\\CodePage");
+    InitializeObjectAttributes(&ObjectAttributes,
+                                          &KeyName,
+                                          OBJ_CASE_INSENSITIVE,
+                                          NULL,
+                                          NULL);
+    Status =  NtOpenKey(&KeyHandle,
+                               KEY_ALL_ACCESS,
+                               &ObjectAttributes);
+    if (!NT_SUCCESS(Status))
+    {
+        DPRINT1("NtOpenKey() failed (Status %lx)\n", Status);
+        return FALSE;
+    }
+
+    // Set ANSI codepage
+    RtlInitUnicodeString(&ValueName, L"ACP");
+    Status = NtSetValueKey(KeyHandle,
+                                       &ValueName,
+                                       0,
+                                       REG_SZ,
+                                       (PVOID)ACPage,
+                                       4 * sizeof(PWCHAR));
+    if (!NT_SUCCESS(Status))
+    {
+        DPRINT1("NtSetValueKey() failed (Status %lx)\n", Status);
+        NtClose(KeyHandle);
+        return FALSE;
+    }
+
+    // Set OEM codepage
+    RtlInitUnicodeString(&ValueName, L"OEMCP");
+    Status = NtSetValueKey(KeyHandle,
+                                      &ValueName,
+                                      0,
+                                      REG_SZ,
+                                      (PVOID)OEMCPage,
+                                      3 * sizeof(PWCHAR));
+    if (!NT_SUCCESS(Status))
+    {
+        DPRINT1("NtSetValueKey() failed (Status %lx)\n", Status);
+        NtClose(KeyHandle);
+        return FALSE;
+    }
+
+    // Set MAC codepage
+    RtlInitUnicodeString(&ValueName, L"MACCP");
+    Status = NtSetValueKey(KeyHandle,
+                                      &ValueName,
+                                      0,
+                                      REG_SZ,
+                                      (PVOID)MACCPage,
+                                      5 * sizeof(PWCHAR));
+    if (!NT_SUCCESS(Status))
+    {
+        DPRINT1("NtSetValueKey() failed (Status %lx)\n", Status);
+        NtClose(KeyHandle);
+        return FALSE;
+    }
+
+    NtClose(KeyHandle);
+
+    return TRUE;
+}
+
+BOOLEAN
+AddCodePage(VOID)
+{
+    ULONG lngIndex = 0;
+    do
+    {
+        if (_wcsicmp(LanguageList[lngIndex].LanguageID , SelectedLanguageId) == 0)
+        {
+            return AddCodepageToRegistry(LanguageList[lngIndex].ACPage,
+                                         LanguageList[lngIndex].OEMCPage,
+                                         LanguageList[lngIndex].MACCPage);
+        }
+
+        lngIndex++;
+    }
+    while (LanguageList[lngIndex].MuiPages != NULL);
+       return FALSE;
+}
+
 /* EOF */
index 202a915..ca591d0 100644 (file)
@@ -53,5 +53,8 @@ MUIDisplayError (ULONG ErrorNum, PINPUT_RECORD Ir, ULONG WaitEvent);
 VOID
 MUIDefaultKeyboardLayout(WCHAR * KeyboardLayout);
 
+BOOLEAN
+AddCodePage(VOID);
+
 
 #endif
index 6b6b8d5..6ebb554 100644 (file)
@@ -821,7 +821,7 @@ ProcessKeyboardLayoutRegistry(PGENERIC_LIST List)
                          0,
                          REG_SZ,
                          (PVOID)(LanguageId + 4),
-                         8);
+                         8 * sizeof(PWCHAR));
   if (!NT_SUCCESS(Status))
     {
       DPRINT1("NtSetValueKey() failed (Status %lx)\n", Status);
@@ -837,7 +837,7 @@ ProcessKeyboardLayoutRegistry(PGENERIC_LIST List)
                          0,
                          REG_SZ,
                          (PVOID)(LanguageId + 4),
-                         8);
+                         8 * sizeof(PWCHAR));
   if (!NT_SUCCESS(Status))
     {
       DPRINT1("NtSetValueKey() failed (Status %lx)\n", Status);