Author: tfaber
Date: Wed Jul 11 23:04:41 2012
New Revision: 56869

URL: http://svn.reactos.org/svn/reactos?rev=56869&view=rev
Log:
[REGEDIT]
- Implement Import/Export of hive files. Patch by Hermes Belusca (German 
translation by me)
See issue #7180 for more details.

Modified:
    trunk/reactos/base/applications/regedit/framewnd.c
    trunk/reactos/base/applications/regedit/lang/bg-BG.rc
    trunk/reactos/base/applications/regedit/lang/cs-CZ.rc
    trunk/reactos/base/applications/regedit/lang/de-DE.rc
    trunk/reactos/base/applications/regedit/lang/el-GR.rc
    trunk/reactos/base/applications/regedit/lang/en-US.rc
    trunk/reactos/base/applications/regedit/lang/es-ES.rc
    trunk/reactos/base/applications/regedit/lang/fr-FR.rc
    trunk/reactos/base/applications/regedit/lang/hu-HU.rc
    trunk/reactos/base/applications/regedit/lang/id-ID.rc
    trunk/reactos/base/applications/regedit/lang/it-IT.rc
    trunk/reactos/base/applications/regedit/lang/ja-JP.rc
    trunk/reactos/base/applications/regedit/lang/ko-KR.rc
    trunk/reactos/base/applications/regedit/lang/nl-NL.rc
    trunk/reactos/base/applications/regedit/lang/no-NO.rc
    trunk/reactos/base/applications/regedit/lang/pl-PL.rc
    trunk/reactos/base/applications/regedit/lang/pt-BR.rc
    trunk/reactos/base/applications/regedit/lang/pt-PT.rc
    trunk/reactos/base/applications/regedit/lang/ro-RO.rc
    trunk/reactos/base/applications/regedit/lang/ru-RU.rc
    trunk/reactos/base/applications/regedit/lang/sk-SK.rc
    trunk/reactos/base/applications/regedit/lang/sl-SI.rc
    trunk/reactos/base/applications/regedit/lang/sv-SE.rc
    trunk/reactos/base/applications/regedit/lang/th-TH.rc
    trunk/reactos/base/applications/regedit/lang/uk-UA.rc
    trunk/reactos/base/applications/regedit/lang/zh-CN.rc
    trunk/reactos/base/applications/regedit/lang/zh-TW.rc
    trunk/reactos/base/applications/regedit/resource.h
    trunk/reactos/include/psdk/winnt.h

Modified: trunk/reactos/base/applications/regedit/framewnd.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/framewnd.c?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/framewnd.c [iso-8859-1] (original)
+++ trunk/reactos/base/applications/regedit/framewnd.c [iso-8859-1] Wed Jul 11 
23:04:41 2012
@@ -260,7 +260,7 @@
 
 static BOOL InitOpenFileName(HWND hWnd, OPENFILENAME* pofn)
 {
-    FILTERPAIR FilterPairs[3];
+    FILTERPAIR FilterPairs[4];
     static TCHAR Filter[1024];
 
     memset(pofn, 0, sizeof(OPENFILENAME));
@@ -271,10 +271,12 @@
     /* create filter string */
     FilterPairs[0].DisplayID = IDS_FLT_REGFILES;
     FilterPairs[0].FilterID = IDS_FLT_REGFILES_FLT;
-    FilterPairs[1].DisplayID = IDS_FLT_REGEDIT4;
-    FilterPairs[1].FilterID = IDS_FLT_REGEDIT4_FLT;
-    FilterPairs[2].DisplayID = IDS_FLT_ALLFILES;
-    FilterPairs[2].FilterID = IDS_FLT_ALLFILES_FLT;
+    FilterPairs[1].DisplayID = IDS_FLT_HIVFILES;
+    FilterPairs[1].FilterID = IDS_FLT_HIVFILES_FLT;
+    FilterPairs[2].DisplayID = IDS_FLT_REGEDIT4;
+    FilterPairs[2].FilterID = IDS_FLT_REGEDIT4_FLT;
+    FilterPairs[3].DisplayID = IDS_FLT_ALLFILES;
+    FilterPairs[3].FilterID = IDS_FLT_ALLFILES_FLT;
     BuildFilterStrings(Filter, FilterPairs, COUNT_OF(FilterPairs));
 
     pofn->lpstrFilter = Filter;
@@ -432,10 +434,14 @@
 
 static BOOL ImportRegistryFile(HWND hWnd)
 {
+    BOOL bRet = FALSE;
     OPENFILENAME ofn;
     TCHAR Caption[128], szTitle[256], szText[256];
     HKEY hKeyRoot;
     LPCTSTR pszKeyPath;
+
+    /* Figure out in which key path we are importing */
+    pszKeyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hKeyRoot);
 
     InitOpenFileName(hWnd, &ofn);
     LoadString(hInst, IDS_IMPORT_REG_FILE, Caption, COUNT_OF(Caption));
@@ -444,21 +450,65 @@
     /*    ofn.lCustData = ;*/
     if (GetOpenFileName(&ofn))
     {
-        FILE *fp = _wfopen(ofn.lpstrFile, L"r");
-        if (fp == NULL || !import_registry_file(fp))
-        {
-            LPSTR p = GetMultiByteString(ofn.lpstrFile);
-            fprintf(stderr, "Can't open file \"%s\"\n", p);
-            HeapFree(GetProcessHeap(), 0, p);
-            if (fp != NULL)
-                fclose(fp);
-            return FALSE;
-        }
-        LoadString(hInst, IDS_APP_TITLE, szTitle, sizeof(szTitle));
-        LoadString(hInst, IDS_IMPORTED_OK, szText, sizeof(szTitle));
-        /* show successful import */
-        MessageBox(NULL, szText, szTitle, MB_OK);
-        fclose(fp);
+        /* Look at the extension of the file to determine its type */
+        if (ofn.nFileExtension >= 1 &&
+            _tcsicmp(ofn.lpstrFile + ofn.nFileExtension, TEXT("reg")) == 0) /* 
REGEDIT4 or Windows Registry Editor Version 5.00 */
+        {
+            /* Open the file */
+            FILE *fp = _wfopen(ofn.lpstrFile, L"r");
+
+            /* Import it */
+            if (fp == NULL || !import_registry_file(fp))
+            {
+                LPSTR p = GetMultiByteString(ofn.lpstrFile);
+                fprintf(stderr, "Can't open file \"%s\"\n", p);
+                HeapFree(GetProcessHeap(), 0, p);
+                bRet = FALSE;
+            }
+            else
+            {
+                /* Show successful import */
+                LoadString(hInst, IDS_APP_TITLE, szTitle, COUNT_OF(szTitle));
+                LoadString(hInst, IDS_IMPORTED_OK, szText, COUNT_OF(szText));
+                MessageBox(NULL, szText, szTitle, MB_OK);
+                bRet = TRUE;
+            }
+
+            /* Close the file */
+            if (fp) fclose(fp);
+        }
+        else /* Registry Hive Files */
+        {
+            LoadString(hInst, IDS_QUERY_IMPORT_HIVE_CAPTION, szTitle, 
COUNT_OF(szTitle));
+            LoadString(hInst, IDS_QUERY_IMPORT_HIVE_MSG, szText, 
COUNT_OF(szText));
+
+            /* Display a confirmation message */
+            if (MessageBox(g_pChildWnd->hWnd, szText, szTitle, MB_ICONWARNING 
| MB_YESNO) == IDYES)
+            {
+                LONG lResult;
+                HKEY hSubKey;
+
+                /* Open the subkey */
+                lResult = RegOpenKeyEx(hKeyRoot, pszKeyPath, 0, KEY_WRITE, 
&hSubKey);
+                if (lResult == ERROR_SUCCESS)
+                {
+                    /* Enable the 'restore' privilege, restore the hive then 
disable the privilege */
+                    EnablePrivilege(SE_RESTORE_NAME, NULL, TRUE);
+                    lResult = RegRestoreKey(hSubKey, ofn.lpstrFile, 
REG_FORCE_RESTORE);
+                    EnablePrivilege(SE_RESTORE_NAME, NULL, FALSE);
+
+                    /* Flush the subkey and close it */
+                    RegFlushKey(hSubKey);
+                    RegCloseKey(hSubKey);
+                }
+
+                /* Set the return value */
+                bRet = (lResult == ERROR_SUCCESS);
+
+                /* Display error, if any */
+                if (!bRet) ErrorMessageBox(hWnd, Caption, lResult);
+            }
+        }
     }
     else
     {
@@ -470,7 +520,7 @@
     pszKeyPath = GetItemPath(g_pChildWnd->hTreeWnd, 0, &hKeyRoot);
     RefreshListView(g_pChildWnd->hListWnd, hKeyRoot, pszKeyPath);
 
-    return TRUE;
+    return bRet;
 }
 
 static UINT_PTR CALLBACK ExportRegistryFile_OFNHookProc(HWND hdlg, UINT uiMsg, 
WPARAM wParam, LPARAM lParam)
@@ -529,6 +579,7 @@
 
 BOOL ExportRegistryFile(HWND hWnd)
 {
+    BOOL bRet = FALSE;
     OPENFILENAME ofn;
     TCHAR ExportKeyPath[_MAX_PATH];
     TCHAR Caption[128];
@@ -553,20 +604,78 @@
     ofn.lpTemplateName = MAKEINTRESOURCE(IDD_EXPORTRANGE);
     if (GetSaveFileName(&ofn))
     {
-        BOOL result;
-        DWORD format;
-
-        if (ofn.nFilterIndex == 1)
-            format = REG_FORMAT_5;
-        else
-            format = REG_FORMAT_4;
-        result = export_registry_key(ofn.lpstrFile, ExportKeyPath, format);
-        if (!result)
-        {
-            LPSTR p = GetMultiByteString(ofn.lpstrFile);
-            fprintf(stderr, "Can't open file \"%s\"\n", p);
-            HeapFree(GetProcessHeap(), 0, p);
-            return FALSE;
+        switch (ofn.nFilterIndex)
+        {
+            case 2: /* Registry Hive Files */
+            {
+                LONG lResult;
+                HKEY hSubKey;
+
+                /* Open the subkey */
+                lResult = RegOpenKeyEx(hKeyRoot, pszKeyPath, 0, KEY_READ, 
&hSubKey);
+                if (lResult == ERROR_SUCCESS)
+                {
+                    /* Enable the 'backup' privilege, save the hive then 
disable the privilege */
+                    EnablePrivilege(SE_BACKUP_NAME, NULL, TRUE);
+                    lResult = RegSaveKey(hSubKey, ofn.lpstrFile, NULL);
+                    if (lResult == ERROR_ALREADY_EXISTS)
+                    {
+                        /*
+                         * We are here, that means that we already said "yes" 
to the confirmation dialog.
+                         * So we absolutely want to replace the hive file.
+                         */
+                        if (DeleteFile(ofn.lpstrFile))
+                        {
+                            /* Try again */
+                            lResult = RegSaveKey(hSubKey, ofn.lpstrFile, NULL);
+                        }
+                    }
+                    EnablePrivilege(SE_BACKUP_NAME, NULL, FALSE);
+
+                    if (lResult != ERROR_SUCCESS)
+                    {
+                        /*
+                         * If we are here, it's because RegSaveKey has failed 
for any reason.
+                         * The problem is that even if it has failed, it has 
created or
+                         * replaced the exported hive file with a new empty 
file. We don't
+                         * want to keep this file, so we delete it.
+                         */
+                        DeleteFile(ofn.lpstrFile);
+                    }
+
+                    /* Close the subkey */
+                    RegCloseKey(hSubKey);
+                }
+
+                /* Set the return value */
+                bRet = (lResult == ERROR_SUCCESS);
+
+                /* Display error, if any */
+                if (!bRet) ErrorMessageBox(hWnd, Caption, lResult);
+
+                break;
+            }
+
+            case 1:  /* Windows Registry Editor Version 5.00 */
+            case 3:  /* REGEDIT4 */
+            default: /* All files ==> use Windows Registry Editor Version 5.00 
*/
+            {
+                if (!export_registry_key(ofn.lpstrFile, ExportKeyPath,
+                                         (ofn.nFilterIndex == 3 ? REG_FORMAT_4
+                                                                : 
REG_FORMAT_5)))
+                {
+                    LPSTR p = GetMultiByteString(ofn.lpstrFile);
+                    fprintf(stderr, "Can't open file \"%s\"\n", p);
+                    HeapFree(GetProcessHeap(), 0, p);
+                    bRet = FALSE;
+                }
+                else
+                {
+                    bRet = TRUE;
+                }
+
+                break;
+            }
         }
     }
     else
@@ -574,7 +683,7 @@
         CheckCommDlgError(hWnd);
     }
 
-    return TRUE;
+    return bRet;
 }
 
 BOOL PrintRegistryHive(HWND hWnd, LPTSTR path)

Modified: trunk/reactos/base/applications/regedit/lang/bg-BG.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/bg-BG.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/bg-BG.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/bg-BG.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -383,6 +383,8 @@
     IDS_ERR_DELETEVALUE     "Изтриването на всички 
указани стойности е невъзможно!"
     IDS_ERR_RENVAL_CAPTION  "Грешка при 
преиманеуването"
     IDS_ERR_RENVAL_TOEMPTY  "Неуспешно преименуване на 
%s. Указаната стойност не е празна. Опитайте 
отново с друго име."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Нов ключ #%d"
     IDS_NEW_VALUE           "Нова стойност #%d"
 END
@@ -406,6 +408,8 @@
     IDS_FLT_REGFILE         "Вписващ файл"
     IDS_FLT_REGFILES        "Вписващи (регистърни) 
файлове (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 вписващи файлове 
(REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Всички файлове (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/cs-CZ.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/cs-CZ.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/cs-CZ.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/cs-CZ.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Nelze odstranit všechny vybrané položky!"
     IDS_ERR_RENVAL_CAPTION  "Chyba při přejmenování položky"
     IDS_ERR_RENVAL_TOEMPTY  "Nelze přejmenovat %s. Vybraná položka je 
prázdná. Vyzkoušejte jiný název."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Nový klíč #%d"
     IDS_NEW_VALUE           "Nová hodnota #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Soubor registru"
     IDS_FLT_REGFILES        "Soubory registru (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Soubory registru Win9x/NT4 (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Všechny soubory (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/de-DE.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/de-DE.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/de-DE.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/de-DE.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Es konnten nicht alle Werte gelöscht werden!"
     IDS_ERR_RENVAL_CAPTION  "Fehler beim Umbenennen des Wertes"
     IDS_ERR_RENVAL_TOEMPTY  "Kann %s nicht umbenennen. Der angegebene Name ist 
leer."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Wiederherstellen des Schlüssels 
bestätigen"
+    IDS_QUERY_IMPORT_HIVE_MSG     "Ein Schlüssel wird über den aktuell 
ausgewählten Schlüssel wiederhergestellt.\nAlle Werte und Unterschlüssel 
dieses Schlüssels werden dabei gelöscht.\nMöchten Sie den Vorgang 
fortsetzen?"
     IDS_NEW_KEY             "Neuer Schlüssel #%d"
     IDS_NEW_VALUE           "Neuer Wert #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Registrierungsdatei"
     IDS_FLT_REGFILES        "Registrierungsdateien (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry-Hive-Dateien (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4-Registrierungsdateien (REGEDIT4) 
(*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Alle Dateien (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/el-GR.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/el-GR.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/el-GR.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/el-GR.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Δεν ήτνα δυνατή η διαγραφή 
όλων των τιμών!"
     IDS_ERR_RENVAL_CAPTION  "Σφάλμα κατά τη Μετονομασία 
Τιμών"
     IDS_ERR_RENVAL_TOEMPTY  "Δεν είναι δυνατή η 
μετονομασία του %s. Το όνομα της 
συγκεκριμένης τιμής είναι άδειο. Δώστε 
άλλο όνομα και προσπαθήστε ξανά."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Νέο Κλειδί #%d"
     IDS_NEW_VALUE           "Νέα Τιμή #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registration αρχεία (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registration αρχεία (REGEDIT4) 
(*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Όλα τα αρχεία (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/en-US.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/en-US.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/en-US.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/en-US.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Unable to delete all specified values!"
     IDS_ERR_RENVAL_CAPTION  "Error Renaming Value"
     IDS_ERR_RENVAL_TOEMPTY  "Cannot rename %s. The specified value name is 
empty. Try another name and try again."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "New Key #%d"
     IDS_NEW_VALUE           "New Value #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registration Files (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registration Files (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "All Files (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/es-ES.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/es-ES.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/es-ES.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/es-ES.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -371,6 +371,8 @@
     IDS_ERR_DELETEVALUE     "¡Incapaz de borrar todos los valores 
especificados!"
     IDS_ERR_RENVAL_CAPTION  "Error Renombrando Valor"
     IDS_ERR_RENVAL_TOEMPTY  "No puede renombrar %s. El nombre de valor 
especificado esta vacio. Trate otro nombre y comienze otra vez."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Nueva Clave #%d"
     IDS_NEW_VALUE           "Nuevo Valor #%d"
 END
@@ -394,6 +396,8 @@
     IDS_FLT_REGFILE         "Fichero de Registro"
     IDS_FLT_REGFILES        "Fichero de Registro (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Fichero de Registro Win9x/NT4 (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Todos los archivos (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/fr-FR.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/fr-FR.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/fr-FR.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/fr-FR.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -364,6 +364,8 @@
     IDS_ERR_DELETEVALUE     "Impossible de supprimer toutes les valeurs 
seléctionnées !"
     IDS_ERR_RENVAL_CAPTION  "Erreur lors de la tentative pour renommer la 
valeur."
     IDS_ERR_RENVAL_TOEMPTY  "Impossible de renommer %s. Le nom de valeur 
spécifié est vide. Essayez à nouveau avec un autre nom."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirmation de la restauration de la clé"
+    IDS_QUERY_IMPORT_HIVE_MSG     "Une clé sera restaurée en remplacement de 
la clé sélectionnée.\nToutes les valeurs et les sous-clés contenues dans 
cette clé seront supprimées.\nVoulez-vous continuer l'opération ?"
     IDS_NEW_KEY             "Nouvelle clé #%d"
     IDS_NEW_VALUE           "Nouvelle valeur #%d"
 END
@@ -387,6 +389,8 @@
     IDS_FLT_REGFILE         "Fichier d'enregistrement"
     IDS_FLT_REGFILES        "Fichiers d'enregistrement (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Fichiers ruche du Registre (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Fichiers d'enregistrement Win9x/NT4 (REGEDIT4) 
(*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Tous les fichiers (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/hu-HU.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/hu-HU.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/hu-HU.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/hu-HU.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -369,6 +369,8 @@
     IDS_ERR_DELETEVALUE     "Unable to delete all specified values!"
     IDS_ERR_RENVAL_CAPTION  "Error Renaming Value"
     IDS_ERR_RENVAL_TOEMPTY  "Cannot rename %s. The specified value name is 
empty. Try another name and try again."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "New Key #%d"
     IDS_NEW_VALUE           "New Value #%d"
 END
@@ -392,6 +394,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registration Files (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registration Files (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "All Files (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/id-ID.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/id-ID.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/id-ID.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/id-ID.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -367,6 +367,8 @@
     IDS_ERR_DELETEVALUE     "Tidak bisa menghapus semua nilai yang ditetapkan!"
     IDS_ERR_RENVAL_CAPTION  "Kesalahan Mengganti nama Nilai"
     IDS_ERR_RENVAL_TOEMPTY  "Tidak bisa mengganti nama %s. Nama nilai yang 
ditetapkan kosong. Coba nama lain dan coba lagi."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Kunci Baru #%d"
     IDS_NEW_VALUE           "Nilai Baru #%d"
 END
@@ -390,6 +392,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "File Registrasi (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "File Registrasi Win9x/NT4 (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Semua File (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/it-IT.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/it-IT.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/it-IT.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/it-IT.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -370,6 +370,8 @@
     IDS_ERR_DELETEVALUE     "Impossibile cancellare tutti i valori indicati!"
     IDS_ERR_RENVAL_CAPTION  "Errore nel rinominare il valore"
     IDS_ERR_RENVAL_TOEMPTY  "Impossibile rinominare %s. Il nome indicato è 
vuoto. Riprovate con un altro nome."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Nuova chiave #%d"
     IDS_NEW_VALUE           "Nuovo valore #%d"
 END
@@ -393,6 +395,8 @@
     IDS_FLT_REGFILE         "File di Registrazione"
     IDS_FLT_REGFILES        "File di Registrazione (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "File di Registrazione Win9x/NT4 (REGEDIT4) 
(*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Tutti i file (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/ja-JP.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/ja-JP.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/ja-JP.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/ja-JP.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     
"指定された値のすべてを削除できません!"
     IDS_ERR_RENVAL_CAPTION  
"値の名前を変更するときにエラーが発生しました。"
     IDS_ERR_RENVAL_TOEMPTY  "%s 
の名前を変更できません。指定された値の名前には文字が含まれていません。別の名前でやり直してください。"
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "新しいキー #%d"
     IDS_NEW_VALUE           "新しい値 #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "登録ファイル"
     IDS_FLT_REGFILES        "登録ファイル (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 登録ファイル (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "すべてのファイル (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/ko-KR.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/ko-KR.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/ko-KR.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/ko-KR.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -353,6 +353,8 @@
     IDS_ERR_DELETEVALUE     "모든 선택된 값을 제거할 수 
없습니다!"
     IDS_ERR_RENVAL_CAPTION  "값 이름 바꾸기 오류"
     IDS_ERR_RENVAL_TOEMPTY  "%s의 이름을 바꿀 수 없습니다. 값의 
이름이 없습니다. 다른 이름으로 해 보세요."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "새 키 #%d"
     IDS_NEW_VALUE           "새 값 #%d"
 END
@@ -376,6 +378,8 @@
     IDS_FLT_REGFILE         "레지스트리 파일"
     IDS_FLT_REGFILES        "레지스트리 파일들 (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 레지스트리 파일 (REGEDIT4) 
(*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "모든 파일 (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/nl-NL.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/nl-NL.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/nl-NL.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/nl-NL.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Unable to delete all specified values!"
     IDS_ERR_RENVAL_CAPTION  "Error Renaming Value"
     IDS_ERR_RENVAL_TOEMPTY  "Cannot rename %s. The specified value name is 
empty. Try another name and try again."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "New Key #%d"
     IDS_NEW_VALUE           "New Value #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registration Files (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registration Files (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "All Files (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/no-NO.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/no-NO.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/no-NO.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/no-NO.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Kunne ikke slette alle angitte verdier!"
     IDS_ERR_RENVAL_CAPTION  "Feil ved endring av navn"
     IDS_ERR_RENVAL_TOEMPTY  "Kan ikke gi nytt navn til %s. Den angitte verdien 
er tom. Prøv et annet navn, og forsøk på nytt."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Ny nøkkel #%d"
     IDS_NEW_VALUE           "Ny verdi #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registerfiler (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registerfiler (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Alle Filer (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/pl-PL.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/pl-PL.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/pl-PL.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/pl-PL.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -375,6 +375,8 @@
     IDS_ERR_DELETEVALUE     "Nie można usunąć wszystkich podanych 
wartości!"
     IDS_ERR_RENVAL_CAPTION  "Błąd przy zmianie wartości"
     IDS_ERR_RENVAL_TOEMPTY  "Nie można zmienić nazwy %s. Określona nazwa 
klucza jest pusta. Wpisz inną nazwę i spróbuj ponownie."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Nowy klucz #%d"
     IDS_NEW_VALUE           "Nowa wartość #%d"
 END
@@ -398,6 +400,8 @@
     IDS_FLT_REGFILE         "Plik rejestru"
     IDS_FLT_REGFILES        "Pliki rejestru (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Pliki rejestru Win9x/NT4 (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Wszystkie pliki (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/pt-BR.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/pt-BR.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/pt-BR.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/pt-BR.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -369,6 +369,8 @@
     IDS_ERR_DELETEVALUE     "Não foi possível excluir todos os valores 
especificados"
     IDS_ERR_RENVAL_CAPTION  "Erro renomeando valor"
     IDS_ERR_RENVAL_TOEMPTY  "Não pode renomear %s. O nome do valor 
especificado está vazio. Tente novamente com outro nome."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Nova chave #%d"
     IDS_NEW_VALUE           "Novo valor #%d"
 END
@@ -392,6 +394,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Arquivos do Registro (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Arquivos do Registro Win9x/NT4 (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Todos os arquivos (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/pt-PT.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/pt-PT.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/pt-PT.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/pt-PT.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -370,6 +370,8 @@
     IDS_ERR_DELETEVALUE     "Unable to delete all specified values!"
     IDS_ERR_RENVAL_CAPTION  "Error Renaming Value"
     IDS_ERR_RENVAL_TOEMPTY  "Cannot rename %s. The specified value name is 
empty. Try another name and try again."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "New Key #%d"
     IDS_NEW_VALUE           "New Value #%d"
 END
@@ -393,6 +395,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registration Files (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registration Files (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "All Files (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/ro-RO.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/ro-RO.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/ro-RO.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/ro-RO.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -366,6 +366,8 @@
     IDS_ERR_DELETEVALUE           "Nu s-a reușit ștergerea tuturor valorilor 
specificate!"
     IDS_ERR_RENVAL_CAPTION        "Eroare la redenumirea de valori"
     IDS_ERR_RENVAL_TOEMPTY        "Nu se poate redenumi %s. Numele valorii 
specificate este gol. Încercați introducerea unui alt nume."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY                   "Cheia nouă #%d"
     IDS_NEW_VALUE                 "Valoarea nouă #%d"
 END
@@ -389,6 +391,8 @@
     IDS_FLT_REGFILE         "Fișier registru"
     IDS_FLT_REGFILES        "Fișiere registru (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Fișiere registru Win9x/NT4 (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Orice fișier (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/ru-RU.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/ru-RU.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/ru-RU.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/ru-RU.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -365,6 +365,8 @@
     IDS_ERR_DELETEVALUE           "Невозможно удалить все 
указанные значения!"
     IDS_ERR_RENVAL_CAPTION        "Ошибка переименования 
значения"
     IDS_ERR_RENVAL_TOEMPTY        "Невозможно 
переименовать %s. Указанное значение не 
пустое. Введите другое значение и 
повторите попытку."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY                   "Новый ключ #%d"
     IDS_NEW_VALUE                 "Новое значение #%d"
 END
@@ -388,6 +390,8 @@
     IDS_FLT_REGFILE         "Файл реестра"
     IDS_FLT_REGFILES        "Файлы реестра (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Файлы реестра Win9x/NT4 (REGEDIT4) 
(*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Все файлы (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/sk-SK.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/sk-SK.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/sk-SK.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/sk-SK.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -353,6 +353,8 @@
     IDS_ERR_DELETEVALUE     "Unable to delete all specified values!"
     IDS_ERR_RENVAL_CAPTION  "Error Renaming Value"
     IDS_ERR_RENVAL_TOEMPTY  "Cannot rename %s. The specified value name is 
empty. Try another name and try again."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Nový kľúč #%d"
     IDS_NEW_VALUE           "Nová hodnota #%d"
 END
@@ -376,6 +378,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registration Files (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registration Files (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Všetky súbory (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/sl-SI.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/sl-SI.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/sl-SI.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/sl-SI.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Unable to delete all specified values!"
     IDS_ERR_RENVAL_CAPTION  "Error Renaming Value"
     IDS_ERR_RENVAL_TOEMPTY  "Cannot rename %s. The specified value name is 
empty. Try another name and try again."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "New Key #%d"
     IDS_NEW_VALUE           "New Value #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registration Files (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registration Files (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "All Files (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/sv-SE.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/sv-SE.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/sv-SE.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/sv-SE.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Det gick inte att ta bort alla specificerade 
värden!"
     IDS_ERR_RENVAL_CAPTION  "Fel vid namnändring av värde"
     IDS_ERR_RENVAL_TOEMPTY  "Kunde inte byta namn på %s. Det specificerade 
värdenamnet är tomt. Ange ett annat namn och försök igen."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Ny Nyckel #%d"
     IDS_NEW_VALUE           "Nytt Värde #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Registerfil"
     IDS_FLT_REGFILES        "Registerfiler (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4-Registerfiler (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Alla filer (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/th-TH.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/th-TH.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/th-TH.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/th-TH.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "Unable to delete all specified values!"
     IDS_ERR_RENVAL_CAPTION  "Error Renaming Value"
     IDS_ERR_RENVAL_TOEMPTY  "Cannot rename %s. The specified value name is 
empty. Try another name and try again."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "New Key #%d"
     IDS_NEW_VALUE           "New Value #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "Registration File"
     IDS_FLT_REGFILES        "Registration Files (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 Registration Files (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "All Files (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/uk-UA.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/uk-UA.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/uk-UA.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/uk-UA.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -369,6 +369,8 @@
     IDS_ERR_DELETEVALUE     "Неможливо видалити усі 
задані значення!"
     IDS_ERR_RENVAL_CAPTION  "Помилка при 
перейменуванні значення"
     IDS_ERR_RENVAL_TOEMPTY  "Не можу перейменувати %s. 
Ім'я заданого значення порожнє. Спробуйте 
інше ім'я та повторіть спробу."
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "Новий розділ #%d"
     IDS_NEW_VALUE           "Нове значення #%d"
 END
@@ -392,6 +394,8 @@
     IDS_FLT_REGFILE         "Файл реєстру"
     IDS_FLT_REGFILES        "Файли реєстру (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Файли реєстру Win9x/NT4 (REGEDIT4) 
(*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "Усі файли (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/zh-CN.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/zh-CN.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/zh-CN.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/zh-CN.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -368,6 +368,8 @@
     IDS_ERR_DELETEVALUE     "无法删除所有指定的值!"
     IDS_ERR_RENVAL_CAPTION  "重命名值时产生错误"
     IDS_ERR_RENVAL_TOEMPTY  "注册表编辑器无法重命名 
%s。指定的值名为空。请键入其他名称,再试一次。"
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "新项 #%d"
     IDS_NEW_VALUE           "新值 #%d"
 END
@@ -391,6 +393,8 @@
     IDS_FLT_REGFILE         "注册文件"
     IDS_FLT_REGFILES        "注册文件 (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 注册文件 (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "所有文件 (*.*)"

Modified: trunk/reactos/base/applications/regedit/lang/zh-TW.rc
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/lang/zh-TW.rc?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/lang/zh-TW.rc [iso-8859-1] 
(original)
+++ trunk/reactos/base/applications/regedit/lang/zh-TW.rc [iso-8859-1] Wed Jul 
11 23:04:41 2012
@@ -369,6 +369,8 @@
     IDS_ERR_DELETEVALUE     "無法刪除所有指定的值!"
     IDS_ERR_RENVAL_CAPTION  "重新命名值時產生錯誤"
     IDS_ERR_RENVAL_TOEMPTY  "登錄編輯器無法重新命名 
%s。指定的值為空。請輸入其他名稱,再試一次。"
+    IDS_QUERY_IMPORT_HIVE_CAPTION "Confirm Key Restoration"
+    IDS_QUERY_IMPORT_HIVE_MSG     "A key will be restored on top of the 
currently selected key.\nAll values and subkeys of this key will be 
deleted.\nDo you want to continue the operation?"
     IDS_NEW_KEY             "新機碼 #%d"
     IDS_NEW_VALUE           "新值 #%d"
 END
@@ -392,6 +394,8 @@
     IDS_FLT_REGFILE         "登錄文件"
     IDS_FLT_REGFILES        "登錄文件 (*.reg)"
     IDS_FLT_REGFILES_FLT    "*.reg"
+    IDS_FLT_HIVFILES        "Registry Hive Files (*.*)"
+    IDS_FLT_HIVFILES_FLT    "*.*"
     IDS_FLT_REGEDIT4        "Win9x/NT4 登錄文件 (REGEDIT4) (*.reg)"
     IDS_FLT_REGEDIT4_FLT    "*.reg"
     IDS_FLT_ALLFILES        "所有文件 (*.*)"

Modified: trunk/reactos/base/applications/regedit/resource.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/regedit/resource.h?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/base/applications/regedit/resource.h [iso-8859-1] (original)
+++ trunk/reactos/base/applications/regedit/resource.h [iso-8859-1] Wed Jul 11 
23:04:41 2012
@@ -136,12 +136,14 @@
 #define IDS_ERR_DELETEVALUE             32855
 #define IDS_ERR_RENVAL_CAPTION          32856
 #define IDS_ERR_RENVAL_TOEMPTY          32857
-#define IDS_BAD_KEY                     32858
-#define IDS_LOAD_HIVE                   32859
-#define IDS_UNLOAD_HIVE                 32860
-
-#define ID_EDIT_NEW_MULTISTRINGVALUE    32861
-#define ID_EDIT_NEW_EXPANDABLESTRINGVALUE 32862
+#define IDS_QUERY_IMPORT_HIVE_CAPTION   32858
+#define IDS_QUERY_IMPORT_HIVE_MSG       32859
+#define IDS_BAD_KEY                     32860
+#define IDS_LOAD_HIVE                   32861
+#define IDS_UNLOAD_HIVE                 32862
+
+#define ID_EDIT_NEW_MULTISTRINGVALUE    32863
+#define ID_EDIT_NEW_EXPANDABLESTRINGVALUE 32864
 
 #define ID_SWITCH_PANELS                32871
 #define ID_EDIT_PERMISSIONS             32872
@@ -158,10 +160,12 @@
 #define IDS_FLT_REGFILE                 31000
 #define IDS_FLT_REGFILES                31001
 #define IDS_FLT_REGFILES_FLT            31002
-#define IDS_FLT_REGEDIT4                31003
-#define IDS_FLT_REGEDIT4_FLT            31004
-#define IDS_FLT_ALLFILES                31005
-#define IDS_FLT_ALLFILES_FLT            31006
+#define IDS_FLT_HIVFILES                31003
+#define IDS_FLT_HIVFILES_FLT            31004
+#define IDS_FLT_REGEDIT4                31005
+#define IDS_FLT_REGEDIT4_FLT            31006
+#define IDS_FLT_ALLFILES                31007
+#define IDS_FLT_ALLFILES_FLT            31008
 
 #define IDS_ACCESS_FULLCONTROL          31101
 #define IDS_ACCESS_READ                 31102

Modified: trunk/reactos/include/psdk/winnt.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/winnt.h?rev=56869&r1=56868&r2=56869&view=diff
==============================================================================
--- trunk/reactos/include/psdk/winnt.h [iso-8859-1] (original)
+++ trunk/reactos/include/psdk/winnt.h [iso-8859-1] Wed Jul 11 23:04:41 2012
@@ -1375,6 +1375,7 @@
 #define REG_WHOLE_HIVE_VOLATILE        1
 #define REG_REFRESH_HIVE       2
 #define REG_NO_LAZY_FLUSH      4
+#define REG_FORCE_RESTORE      8
 #define REG_OPTION_RESERVED    0
 #define REG_OPTION_NON_VOLATILE        0
 #define REG_OPTION_VOLATILE    1


Reply via email to