[PATCH v4 1/1] reg: Add REG_QWORD support to 'add'.

Nikolay Sivov wine at gitlab.winehq.org
Mon Jun 27 16:13:02 CDT 2022


From: Nikolay Sivov <nsivov at codeweavers.com>

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
 po/ar.po                 |  2 +-
 po/ast.po                |  2 +-
 po/bg.po                 |  2 +-
 po/ca.po                 | 52 +++++++++++++++++++++-
 po/cs.po                 |  2 +-
 po/da.po                 |  2 +-
 po/de.po                 | 52 +++++++++++++++++++++-
 po/el.po                 |  2 +-
 po/en.po                 |  4 +-
 po/en_US.po              |  4 +-
 po/eo.po                 |  2 +-
 po/es.po                 |  2 +-
 po/fa.po                 |  2 +-
 po/fi.po                 | 52 +++++++++++++++++++++-
 po/fr.po                 | 52 +++++++++++++++++++++-
 po/he.po                 |  2 +-
 po/hi.po                 |  2 +-
 po/hr.po                 |  2 +-
 po/hu.po                 |  2 +-
 po/it.po                 |  2 +-
 po/ja.po                 | 52 +++++++++++++++++++++-
 po/ko.po                 | 52 +++++++++++++++++++++-
 po/lt.po                 | 52 +++++++++++++++++++++-
 po/ml.po                 |  2 +-
 po/nb_NO.po              |  2 +-
 po/nl.po                 | 52 +++++++++++++++++++++-
 po/or.po                 |  2 +-
 po/pa.po                 |  2 +-
 po/pl.po                 | 52 +++++++++++++++++++++-
 po/pt_BR.po              | 52 +++++++++++++++++++++-
 po/pt_PT.po              |  2 +-
 po/rm.po                 |  2 +-
 po/ro.po                 |  2 +-
 po/ru.po                 |  2 +-
 po/si.po                 |  2 +-
 po/sk.po                 |  2 +-
 po/sl.po                 |  2 +-
 po/sr_RS at cyrillic.po     |  2 +-
 po/sr_RS at latin.po        |  2 +-
 po/sv.po                 |  2 +-
 po/ta.po                 |  2 +-
 po/te.po                 |  2 +-
 po/th.po                 |  2 +-
 po/tr.po                 |  2 +-
 po/uk.po                 |  2 +-
 po/wa.po                 |  2 +-
 po/wine.pot              |  2 +-
 po/zh_CN.po              | 52 +++++++++++++++++++++-
 po/zh_TW.po              | 52 +++++++++++++++++++++-
 programs/reg/add.c       | 16 +++++++
 programs/reg/reg.c       |  1 +
 programs/reg/reg.h       |  2 +-
 programs/reg/reg.rc      |  2 +-
 programs/reg/tests/add.c | 95 ++++++++++++++++++++++++++++++++++++++++
 54 files changed, 765 insertions(+), 53 deletions(-)

diff --git a/po/ar.po b/po/ar.po
index bdadf3b05e7..264377331e9 100644
--- a/po/ar.po
+++ b/po/ar.po
@@ -17183,7 +17183,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/ast.po b/po/ast.po
index 7ffab61e430..83d5acdf1a3 100644
--- a/po/ast.po
+++ b/po/ast.po
@@ -15985,7 +15985,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/bg.po b/po/bg.po
index 18a296ecdc6..6765825b3a6 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -15918,7 +15918,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/ca.po b/po/ca.po
index 73f347c5d93..51a1fa75255 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -15958,6 +15958,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15991,7 +16041,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/cs.po b/po/cs.po
index f24e12c818b..5f705610854 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -16684,7 +16684,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/da.po b/po/da.po
index a3c33fb8aba..799ea7c8ac4 100644
--- a/po/da.po
+++ b/po/da.po
@@ -17143,7 +17143,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/de.po b/po/de.po
index 87432afb703..9c989dc4bc0 100644
--- a/po/de.po
+++ b/po/de.po
@@ -15928,6 +15928,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15961,7 +16011,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/el.po b/po/el.po
index a4fcf4fa8d4..e1b43d7d051 100644
--- a/po/el.po
+++ b/po/el.po
@@ -15636,7 +15636,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/en.po b/po/en.po
index aef844cd5fa..d9d2e133e22 100644
--- a/po/en.po
+++ b/po/en.po
@@ -15877,7 +15877,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
@@ -15924,7 +15924,7 @@ msgstr ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/en_US.po b/po/en_US.po
index 1176981eb03..7da2795dc09 100644
--- a/po/en_US.po
+++ b/po/en_US.po
@@ -15877,7 +15877,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
@@ -15924,7 +15924,7 @@ msgstr ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/eo.po b/po/eo.po
index 546b99d4e86..fef398be404 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -16242,7 +16242,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/es.po b/po/es.po
index 230e2ba4c4d..c5948a30a94 100644
--- a/po/es.po
+++ b/po/es.po
@@ -16554,7 +16554,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/fa.po b/po/fa.po
index a39c32fb800..b2792cd709b 100644
--- a/po/fa.po
+++ b/po/fa.po
@@ -15816,7 +15816,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/fi.po b/po/fi.po
index c6c60f00d03..9308715d8bf 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -15819,6 +15819,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15852,7 +15902,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/fr.po b/po/fr.po
index 0edc8d5e0a0..980f2bd90a0 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -16561,6 +16561,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -16594,7 +16644,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/he.po b/po/he.po
index 493ac9ff014..7932a2820f6 100644
--- a/po/he.po
+++ b/po/he.po
@@ -16662,7 +16662,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/hi.po b/po/hi.po
index cfc054e7f76..81c24c186fa 100644
--- a/po/hi.po
+++ b/po/hi.po
@@ -15332,7 +15332,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/hr.po b/po/hr.po
index 77003cfa3cf..a6b1bf18806 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -16643,7 +16643,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/hu.po b/po/hu.po
index 356473a34ab..4c762fbec60 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -17135,7 +17135,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/it.po b/po/it.po
index 52391bd02d8..21d8ef44551 100644
--- a/po/it.po
+++ b/po/it.po
@@ -17218,7 +17218,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/ja.po b/po/ja.po
index e3f20eca1c4..19b82ff27c8 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -15861,6 +15861,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15894,7 +15944,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/ko.po b/po/ko.po
index 30ffc284b0a..b5afc3b292b 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -15795,6 +15795,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15828,7 +15878,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/lt.po b/po/lt.po
index ea1d281a430..41536a396d8 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -15847,6 +15847,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15880,7 +15930,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/ml.po b/po/ml.po
index c319ea42fe6..2b0ca09f80b 100644
--- a/po/ml.po
+++ b/po/ml.po
@@ -15331,7 +15331,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/nb_NO.po b/po/nb_NO.po
index c7d6d9534d7..ac322c785ac 100644
--- a/po/nb_NO.po
+++ b/po/nb_NO.po
@@ -16681,7 +16681,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/nl.po b/po/nl.po
index 8e3074e26e5..5e30fdb1e89 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -15915,6 +15915,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15948,7 +15998,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/or.po b/po/or.po
index 13a3ff5f731..505b5df8462 100644
--- a/po/or.po
+++ b/po/or.po
@@ -15317,7 +15317,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/pa.po b/po/pa.po
index b222eb535b0..379f6b7d65a 100644
--- a/po/pa.po
+++ b/po/pa.po
@@ -15317,7 +15317,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/pl.po b/po/pl.po
index 6299025c8b1..fdfccbd93b9 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -15978,6 +15978,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -16011,7 +16061,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 5d4e3ddb35d..1fe6eb0f770 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -16033,6 +16033,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -16066,7 +16116,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/pt_PT.po b/po/pt_PT.po
index 9557e2c6659..bcdbbbe941d 100644
--- a/po/pt_PT.po
+++ b/po/pt_PT.po
@@ -16867,7 +16867,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/rm.po b/po/rm.po
index 80114864531..3fddfb4d575 100644
--- a/po/rm.po
+++ b/po/rm.po
@@ -15420,7 +15420,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/ro.po b/po/ro.po
index 07e09d9d5b9..fadd5a14b51 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -16927,7 +16927,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/ru.po b/po/ru.po
index e7190a0bd38..760b6a3d3c0 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -16286,7 +16286,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/si.po b/po/si.po
index 211e6bfa0ae..48d02fe4537 100644
--- a/po/si.po
+++ b/po/si.po
@@ -15964,7 +15964,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/sk.po b/po/sk.po
index ecb834b86a6..e506ef8dbb0 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -16412,7 +16412,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/sl.po b/po/sl.po
index e819db055da..514e65021d3 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -17161,7 +17161,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/sr_RS at cyrillic.po b/po/sr_RS at cyrillic.po
index 59b6e725d22..2412460480f 100644
--- a/po/sr_RS at cyrillic.po
+++ b/po/sr_RS at cyrillic.po
@@ -16493,7 +16493,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/sr_RS at latin.po b/po/sr_RS at latin.po
index efb1fa454f7..b6db682afae 100644
--- a/po/sr_RS at latin.po
+++ b/po/sr_RS at latin.po
@@ -16676,7 +16676,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/sv.po b/po/sv.po
index 883f2c60052..74293519144 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -16817,7 +16817,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/ta.po b/po/ta.po
index 56b8f7ae323..fb7f2cc6fd3 100644
--- a/po/ta.po
+++ b/po/ta.po
@@ -15245,7 +15245,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/te.po b/po/te.po
index 1d8a9cc8208..46c708c2b8b 100644
--- a/po/te.po
+++ b/po/te.po
@@ -15317,7 +15317,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/th.po b/po/th.po
index e794bc347ea..5d3df7c0515 100644
--- a/po/th.po
+++ b/po/th.po
@@ -15919,7 +15919,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/tr.po b/po/tr.po
index a5893420ed0..3a82b587713 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -16160,7 +16160,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/uk.po b/po/uk.po
index b3750ba8bb9..19599af9da9 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -16167,7 +16167,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/wa.po b/po/wa.po
index 91282783e0e..2a5c27d71ac 100644
--- a/po/wa.po
+++ b/po/wa.po
@@ -15788,7 +15788,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/wine.pot b/po/wine.pot
index ab3cc1c54b4..3e58195abb7 100644
--- a/po/wine.pot
+++ b/po/wine.pot
@@ -15224,7 +15224,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index b162a2c6802..f866d622974 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -15651,6 +15651,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15684,7 +15734,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index 00ec45f1dcb..c1982784489 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -15683,6 +15683,56 @@ msgstr ""
 "\n"
 
 #: programs/reg/reg.rc:67
+#, fuzzy
+#| msgid ""
+#| "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/"
+#| "f]\n"
+#| "\n"
+#| "  Adds a key to the registry or adds a new value to a given registry "
+#| "key.\n"
+#| "\n"
+#| "  <key>\n"
+#| "     The registry key to add or, if either [/v] or [/ve] is specified,\n"
+#| "     the key in which to add the new registry data.\n"
+#| "\n"
+#| "     Format: ROOT\\Subkey\n"
+#| "\n"
+#| "     ROOT: A predefined registry key. This must be one of the following:\n"
+#| "\n"
+#| "         HKEY_LOCAL_MACHINE  | HKLM\n"
+#| "         HKEY_CURRENT_USER   | HKCU\n"
+#| "         HKEY_CLASSES_ROOT   | HKCR\n"
+#| "         HKEY_USERS          | HKU\n"
+#| "         HKEY_CURRENT_CONFIG | HKCC\n"
+#| "\n"
+#| "     Subkey: The full path to a registry key under a given ROOT key.\n"
+#| "\n"
+#| "  /v <value_name>\n"
+#| "     The name of the registry value to add.\n"
+#| "\n"
+#| "  /ve\n"
+#| "     Add an unnamed registry value. This option modifies the (Default)\n"
+#| "     registry value.\n"
+#| "\n"
+#| "  /t <type>\n"
+#| "     The type of data to add to the registry. If [/t] is specified,\n"
+#| "     <type> must be one of the following:\n"
+#| "\n"
+#| "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
+#| "         REG_DWORD | REG_BINARY   | REG_NONE\n"
+#| "\n"
+#| "     If [/t] is not specified, the default data type is REG_SZ.\n"
+#| "\n"
+#| "  /s <separator>\n"
+#| "     The character used to separate strings in REG_MULTI_SZ data.\n"
+#| "     If [/s] is not specified, the default separator is \\0.\n"
+#| "\n"
+#| "  /d <data>\n"
+#| "     The data to add to the new registry value.\n"
+#| "\n"
+#| "  /f\n"
+#| "     Modify the registry without prompting for confirmation.\n"
+#| "\n"
 msgid ""
 "REG ADD <key> [/v value_name | /ve] [/t type] [/s separator] [/d data] [/f]\n"
 "\n"
@@ -15716,7 +15766,7 @@ msgid ""
 "     <type> must be one of the following:\n"
 "\n"
 "         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n"
-"         REG_DWORD | REG_BINARY   | REG_NONE\n"
+"         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n"
 "\n"
 "     If [/t] is not specified, the default data type is REG_SZ.\n"
 "\n"
diff --git a/programs/reg/add.c b/programs/reg/add.c
index 269fa30e5e1..e0cd0373339 100644
--- a/programs/reg/add.c
+++ b/programs/reg/add.c
@@ -84,6 +84,22 @@ static BOOL get_regdata(const WCHAR *data, DWORD reg_type, WCHAR separator,
             *(DWORD *)*data_bytes = val;
             break;
         }
+        case REG_QWORD:
+        {
+            WCHAR *rest;
+            UINT64 val;
+
+            val = _wcstoui64(data, &rest, (towlower(data[1]) == 'x') ? 16 : 10);
+            if (*rest || (val == ~0ull && errno == ERANGE))
+            {
+                output_message(STRING_MISSING_NUMBER);
+                return FALSE;
+            }
+            *size_bytes = sizeof(val);
+            *data_bytes = malloc(*size_bytes);
+            *(UINT64 *)*data_bytes = val;
+            break;
+        }
         case REG_BINARY:
         {
             BYTE hex0, hex1, *ptr;
diff --git a/programs/reg/reg.c b/programs/reg/reg.c
index 4fd374579e9..5753b99bdf4 100644
--- a/programs/reg/reg.c
+++ b/programs/reg/reg.c
@@ -46,6 +46,7 @@ const struct reg_type_rels type_rels[] =
     {REG_DWORD,               L"REG_DWORD"},
     {REG_DWORD_LITTLE_ENDIAN, L"REG_DWORD_LITTLE_ENDIAN"},
     {REG_DWORD_BIG_ENDIAN,    L"REG_DWORD_BIG_ENDIAN"},
+    {REG_QWORD,               L"REG_QWORD"},
     {REG_MULTI_SZ,            L"REG_MULTI_SZ"},
 };
 
diff --git a/programs/reg/reg.h b/programs/reg/reg.h
index 67b49b7797f..4ac54dcecaf 100644
--- a/programs/reg/reg.h
+++ b/programs/reg/reg.h
@@ -31,7 +31,7 @@ struct reg_type_rels {
     const WCHAR *name;
 };
 
-extern const struct reg_type_rels type_rels[8];
+extern const struct reg_type_rels type_rels[9];
 
 void output_writeconsole(const WCHAR *str, DWORD wlen);
 void WINAPIV output_message(unsigned int id, ...);
diff --git a/programs/reg/reg.rc b/programs/reg/reg.rc
index a3c53cf41b4..45acb993add 100644
--- a/programs/reg/reg.rc
+++ b/programs/reg/reg.rc
@@ -55,7 +55,7 @@ STRINGTABLE
 \     The type of data to add to the registry. If [/t] is specified,\n\
 \     <type> must be one of the following:\n\n\
 \         REG_SZ    | REG_MULTI_SZ | REG_EXPAND_SZ\n\
-\         REG_DWORD | REG_BINARY   | REG_NONE\n\n\
+\         REG_DWORD | REG_QWORD    | REG_BINARY   | REG_NONE\n\n\
 \     If [/t] is not specified, the default data type is REG_SZ.\n\n\
 \  /s <separator>\n\
 \     The character used to separate strings in REG_MULTI_SZ data.\n\
diff --git a/programs/reg/tests/add.c b/programs/reg/tests/add.c
index 0d213414443..ae9c79b07ec 100644
--- a/programs/reg/tests/add.c
+++ b/programs/reg/tests/add.c
@@ -764,6 +764,100 @@ static void test_reg_dword_big_endian(void)
     delete_key(HKEY_CURRENT_USER, KEY_BASE, 0);
 }
 
+static void test_reg_qword(void)
+{
+    UINT64 qword;
+    HKEY hkey;
+    DWORD r;
+
+    add_key(HKEY_CURRENT_USER, KEY_BASE, 0, &hkey);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /t REG_QWORD /f /d 0x123456789abcdef", &r);
+    ok(r == REG_EXIT_SUCCESS, "Unexpected exit code %ld.\n", r);
+    qword = 0x123456789abcdef;
+    verify_reg(hkey, "", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /ve /t REG_QWORD /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "Unexpected exit code %ld.\n", r);
+    qword = 0;
+    verify_reg(hkey, "", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword0 /t REG_QWORD /f /d", &r);
+    ok(r == REG_EXIT_FAILURE, "Unexpected exit code %lu.\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword1 /t REG_QWORD /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "Unexpected exit code %ld.\n", r);
+    qword = 0;
+    verify_reg(hkey, "qword1", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword2 /t REG_QWORD /d zzz /f", &r);
+    ok(r == REG_EXIT_FAILURE, "Unexpected exit code %lu.\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword3 /t REG_QWORD /d deadbeef /f", &r);
+    ok(r == REG_EXIT_FAILURE, "Unexpected exit code %lu.\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword4 /t REG_QWORD /d 123xyz /f", &r);
+    ok(r == REG_EXIT_FAILURE, "Unexpected exit code %lu.\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword5 /t reg_qword /d 12345678 /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "Unexpected exit code %ld.\n", r);
+    qword = 12345678;
+    verify_reg(hkey, "qword5", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword6 /t REG_QWORD /D 0123 /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "Unexpected exit code %ld.\n", r);
+    qword = 123;
+    verify_reg(hkey, "qword6", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword7 /t reg_qword /d 0xabcdefg /f", &r);
+    ok(r == REG_EXIT_FAILURE, "got exit code %ld, expected 1\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword8 /t REG_qword /d 0xdeadbeef /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "got exit code %ld, expected 0\n", r);
+    qword = 0xdeadbeef;
+    verify_reg(hkey, "qword8", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /t REG_QWORD /v qword9 /f /d -1", &r);
+    ok(r == REG_EXIT_SUCCESS, "got exit code %ld, expected 0\n", r);
+    qword = ~0ull;
+    verify_reg(hkey, "qword9", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /t REG_QWORD /v qword10 /f /d -0x1", &r);
+    ok(r == REG_EXIT_FAILURE, "got exit code %lu, expected 1\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword11 /t REG_qword /d 0x01ffffffffffffffff /f", &r);
+    ok(r == REG_EXIT_FAILURE, "got exit code %ld, expected 1\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword12 /t REG_QWORD /d 0xffffffffffffffff /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "got exit code %ld, expected 0\n", r);
+    qword = ~0ull;
+    verify_reg(hkey, "qword12", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword13 /t REG_QWORD /d 00x123 /f", &r);
+    ok(r == REG_EXIT_FAILURE, "got exit code %ld, expected 1\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword14 /t REG_QWORD /d 0X123 /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "got exit code %ld, expected 0\n", r);
+    qword = 0x123;
+    verify_reg(hkey, "qword14", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword15 /t REG_QWORD /d 18446744073709551616 /f", &r);
+    ok(r == REG_EXIT_FAILURE, "got exit code %lu, expected 1\n", r);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword16 /t REG_QWORD /d 456 /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "got exit code %ld, expected 0\n", r);
+    qword = 456;
+    verify_reg(hkey, "qword16", REG_QWORD, &qword, sizeof(qword), 0);
+
+    run_reg_exe("reg add HKCU\\" KEY_BASE " /v qword17 /t REG_QWORD /d 0x456 /f", &r);
+    ok(r == REG_EXIT_SUCCESS, "got exit code %ld, expected 0\n", r);
+    qword = 0x456;
+    verify_reg(hkey, "qword17", REG_QWORD, &qword, sizeof(qword), 0);
+
+    close_key(hkey);
+    delete_key(HKEY_CURRENT_USER, KEY_BASE, 0);
+}
+
 static void test_reg_multi_sz(void)
 {
     HKEY hkey;
@@ -988,6 +1082,7 @@ START_TEST(add)
     test_reg_binary();
     test_reg_dword();
     test_reg_dword_big_endian();
+    test_reg_qword();
     test_reg_multi_sz();
 
     /* Check if reg.exe is running with elevated privileges */
-- 
GitLab

https://gitlab.winehq.org/wine/wine/-/merge_requests/306



More information about the wine-devel mailing list