diff --git a/reactos/base/applications/cmdutils/reg/De.rc b/reactos/base/applications/cmdutils/reg/De.rc
index 504359d67a6..0940640306c 100644
--- a/reactos/base/applications/cmdutils/reg/De.rc
+++ b/reactos/base/applications/cmdutils/reg/De.rc
@@ -35,6 +35,6 @@ STRINGTABLE
STRING_SUCCESS, "Der Vorgang wurde erfolgreich abgeschlossen\n"
STRING_INVALID_KEY, "Fehler: Ungültiger Schlüssel\n"
STRING_INVALID_CMDLINE, "Fehler: Ungültige Befehlszeilenargumente\n"
- STRING_NO_REMOTE, "Fehler: Konnte Schlüssel nicht zum entfernten Rechner hinzufügen\n"
+ STRING_NO_REMOTE, "Fehler: Konnte Schlüssel nicht zum remote Rechner hinzufügen\n"
STRING_CANNOT_FIND, "Fehler: Der angegebene Schlüssel oder Wert konnte nicht gefunden werden\n"
}
diff --git a/reactos/base/applications/cmdutils/reg/It.rc b/reactos/base/applications/cmdutils/reg/It.rc
new file mode 100644
index 00000000000..09d38fd4025
--- /dev/null
+++ b/reactos/base/applications/cmdutils/reg/It.rc
@@ -0,0 +1,40 @@
+/*
+ * REG.EXE - Wine-compatible reg program.
+ * Italian language support
+ *
+ * Copyright 2010 Luca Bennati
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "reg.h"
+
+/*UTF-8*/
+#pragma code_page(65001)
+
+LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
+
+STRINGTABLE
+{
+ STRING_USAGE, "La sintassi di questo comando è:\n\nREG [ ADD | DELETE | QUERY ]\nREG comando /?\n"
+ STRING_ADD_USAGE, "REG ADD nome_della_chiave [/v nome_del_valore | /ve] [/t tipo] [/s separatore] [/d dati] [/f]\n"
+ STRING_DELETE_USAGE, "REG DELETE nome_della_chiave [/v nome_del_valore | /ve | /va] [/f]\n"
+ STRING_QUERY_USAGE, "REG QUERY nome_della_chiave [/v nome_del_valore | /ve] [/s]\n"
+ STRING_SUCCESS, "Operazione completata con successo\n"
+ STRING_INVALID_KEY, "Errore: nome della chiave non valido\n"
+ STRING_INVALID_CMDLINE, "Errore: parametri della linea di comando non validi\n"
+ STRING_NO_REMOTE, "Errore: Impossibile aggiungere chiavi alla macchina remota\n"
+ STRING_CANNOT_FIND, "Errore: Il sistema non è riuscito a trovare la chiave di registro o il valore specificati\n"
+}
diff --git a/reactos/base/applications/cmdutils/reg/Uk.rc b/reactos/base/applications/cmdutils/reg/Uk.rc
new file mode 100644
index 00000000000..70c86f70cb9
--- /dev/null
+++ b/reactos/base/applications/cmdutils/reg/Uk.rc
@@ -0,0 +1,43 @@
+/*
+ * REG.EXE - Wine-compatible reg program.
+ *
+ * Copyright 2008 Andrew Riedi
+ *
+ * Ukrainian language support
+ *
+ * Copyright 2010 Igor Paliychuk
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "reg.h"
+
+/* UTF-8 */
+#pragma code_page(65001)
+
+LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT
+
+STRINGTABLE
+{
+ STRING_USAGE, "Синтаксис цієї команди наступний:\n\nREG [ ADD | DELETE | QUERY ]\nREG command /?\n"
+ STRING_ADD_USAGE, "REG ADD key_name [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
+ STRING_DELETE_USAGE, "REG DELETE key_name [/v value_name | /ve | /va] [/f]\n"
+ STRING_QUERY_USAGE, "REG QUERY key_name [/v value_name | /ve] [/s]\n"
+ STRING_SUCCESS, "Операція успішно завершена\n"
+ STRING_INVALID_KEY, "Помилка: неправильне ім'я ключа\n"
+ STRING_INVALID_CMDLINE, "Помилка: неправильні параметри командного рядка\n"
+ STRING_NO_REMOTE, "Помилка: неможливо додати ключі на віддаленій машині\n"
+ STRING_CANNOT_FIND, "Помилка: не вдалось знайти вказаний ключ реєстру чи значення\n"
+}
diff --git a/reactos/base/applications/cmdutils/reg/reg.c b/reactos/base/applications/cmdutils/reg/reg.c
index 07dbdbff367..f65a3c8bc93 100644
--- a/reactos/base/applications/cmdutils/reg/reg.c
+++ b/reactos/base/applications/cmdutils/reg/reg.c
@@ -124,6 +124,21 @@ static LPBYTE get_regdata(LPWSTR data, DWORD reg_type, WCHAR separator, DWORD *r
lstrcpyW((LPWSTR)out_data,data);
break;
}
+ case REG_DWORD:
+ {
+ LPWSTR rest;
+ DWORD val;
+ val = strtolW(data, &rest, 0);
+ if (rest == data) {
+ static const WCHAR nonnumber[] = {'E','r','r','o','r',':',' ','/','d',' ','r','e','q','u','i','r','e','s',' ','n','u','m','b','e','r','.','\n',0};
+ reg_printfW(nonnumber);
+ break;
+ }
+ *reg_count = sizeof(DWORD);
+ out_data = HeapAlloc(GetProcessHeap(),0,*reg_count);
+ ((LPDWORD)out_data)[0] = val;
+ break;
+ }
default:
{
static const WCHAR unhandled[] = {'U','n','h','a','n','d','l','e','d',' ','T','y','p','e',' ','0','x','%','x',' ',' ','d','a','t','a',' ','%','s','\n',0};
diff --git a/reactos/base/applications/cmdutils/reg/rsrc.rc b/reactos/base/applications/cmdutils/reg/rsrc.rc
index 1ab7f7f3b97..c145fe91a21 100644
--- a/reactos/base/applications/cmdutils/reg/rsrc.rc
+++ b/reactos/base/applications/cmdutils/reg/rsrc.rc
@@ -1,13 +1,17 @@
#include "Da.rc"
-#include "De.rc"
#include "En.rc"
-#include "Fr.rc"
-#include "Ja.rc"
-//#include "Ko.rc"
-#include "Lt.rc"
+#include "Ko.rc"
#include "Nl.rc"
+#include "Pl.rc"
+
+/* UTF-8 */
+#include "De.rc"
+#include "Fr.rc"
+#include "It.rc"
+#include "Ja.rc"
+#include "Lt.rc"
#include "No.rc"
-//#include "Pl.rc"
#include "Pt.rc"
#include "Ru.rc"
#include "Si.rc"
+#include "Uk.rc"
diff --git a/reactos/base/system/msiexec/msiexec.rbuild b/reactos/base/system/msiexec/msiexec.rbuild
index a3a24950930..228875d72c7 100644
--- a/reactos/base/system/msiexec/msiexec.rbuild
+++ b/reactos/base/system/msiexec/msiexec.rbuild
@@ -12,7 +12,6 @@
ole32
msi
msiexec.c
- rsrc.rc
service.c
- version.rc
+ rsrc.rc
diff --git a/reactos/base/system/msiexec/rsrc.rc b/reactos/base/system/msiexec/rsrc.rc
index 01e43befe19..cfc89370039 100644
--- a/reactos/base/system/msiexec/rsrc.rc
+++ b/reactos/base/system/msiexec/rsrc.rc
@@ -18,7 +18,16 @@
#include
-#include "version.rc"
+#define WINE_FILEDESCRIPTION_STR "Wine Installer"
+#define WINE_FILENAME_STR "msiexec.exe"
+#define WINE_FILETYPE VFT_APP
+#define WINE_FILEVERSION 3,1,4000,1823
+#define WINE_FILEVERSION_STR "3.1.4000.1823"
+#define WINE_PRODUCTVERSION 3,1,4000,1823
+#define WINE_PRODUCTVERSION_STR "3.1.4000.1823"
+#define WINE_PRODUCTNAME_STR "Wine Installer"
+
+#include "wine/wine_common_ver.rc"
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
diff --git a/reactos/base/system/msiexec/version.rc b/reactos/base/system/msiexec/version.rc
deleted file mode 100644
index 077759431e2..00000000000
--- a/reactos/base/system/msiexec/version.rc
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright (c) 2004 Mike McCormack
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#define WINE_FILEDESCRIPTION_STR "Wine Installer"
-#define WINE_FILENAME_STR "msiexec.exe"
-#define WINE_FILETYPE VFT_APP
-#define WINE_FILEVERSION 3,1,4000,1823
-#define WINE_FILEVERSION_STR "3.1.4000.1823"
-#define WINE_PRODUCTVERSION 3,1,4000,1823
-#define WINE_PRODUCTVERSION_STR "3.1.4000.1823"
-#define WINE_PRODUCTNAME_STR "Wine Installer"
-
-#include "wine/wine_common_ver.rc"
diff --git a/reactos/media/doc/README.WINE b/reactos/media/doc/README.WINE
index a69885a153d..4eadfce1da2 100644
--- a/reactos/media/doc/README.WINE
+++ b/reactos/media/doc/README.WINE
@@ -188,13 +188,13 @@ reactos/base/applications/cmdutils/xcopy # Autosync
reactos/base/applications/games/winemine # Out of sync
reactos/base/applications/iexplore # Autosync
reactos/base/applications/notepad # Forked at Wine-20041201
-reactos/base/applications/reg # Synced to Wine-1_1_31
+reactos/base/applications/reg # Autosync
reactos/base/applications/regedit # Out of sync
reactos/base/applications/winhlp32 # Autosync
reactos/base/applications/wordpad # Autosync
reactos/base/services/rpcss # Synced to Wine-20081105
-reactos/base/system/expand # Synced to Wine-1_1_37
-reactos/base/system/msiexec # Synced to Wine-1_1_23
+reactos/base/system/expand # Autosync
+reactos/base/system/msiexec # Autosync
reactos/modules/rosapps/winfile # Autosync
In addition the following libs, dlls and source files are mostly based on code ported