https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ea2ca8fa9103c47bcd9ff1c02f6e1ef8bf3d0cfb

commit ea2ca8fa9103c47bcd9ff1c02f6e1ef8bf3d0cfb
Author:     Eric Kohl <[email protected]>
AuthorDate: Sat Mar 23 18:24:07 2019 +0100
Commit:     Eric Kohl <[email protected]>
CommitDate: Sat Mar 23 18:49:40 2019 +0100

    [SYSDM] Add the 'Change Profile Type' dialog.
---
 dll/cpl/sysdm/lang/bg-BG.rc |  13 ++++
 dll/cpl/sysdm/lang/cs-CZ.rc |  13 ++++
 dll/cpl/sysdm/lang/da-DK.rc |  13 ++++
 dll/cpl/sysdm/lang/de-DE.rc |  13 ++++
 dll/cpl/sysdm/lang/el-GR.rc |  13 ++++
 dll/cpl/sysdm/lang/en-US.rc |  13 ++++
 dll/cpl/sysdm/lang/es-ES.rc |  13 ++++
 dll/cpl/sysdm/lang/fr-FR.rc |  13 ++++
 dll/cpl/sysdm/lang/he-IL.rc |  13 ++++
 dll/cpl/sysdm/lang/hu-HU.rc |  13 ++++
 dll/cpl/sysdm/lang/id-ID.rc |  13 ++++
 dll/cpl/sysdm/lang/it-IT.rc |  13 ++++
 dll/cpl/sysdm/lang/ja-JP.rc |  13 ++++
 dll/cpl/sysdm/lang/nl-NL.rc |  13 ++++
 dll/cpl/sysdm/lang/no-NO.rc |  13 ++++
 dll/cpl/sysdm/lang/pl-PL.rc |  13 ++++
 dll/cpl/sysdm/lang/ro-RO.rc |  13 ++++
 dll/cpl/sysdm/lang/ru-RU.rc |  13 ++++
 dll/cpl/sysdm/lang/sk-SK.rc |  13 ++++
 dll/cpl/sysdm/lang/sq-AL.rc |  13 ++++
 dll/cpl/sysdm/lang/sv-SE.rc |  13 ++++
 dll/cpl/sysdm/lang/tr-TR.rc |  13 ++++
 dll/cpl/sysdm/lang/uk-UA.rc |  13 ++++
 dll/cpl/sysdm/lang/zh-CN.rc |  13 ++++
 dll/cpl/sysdm/lang/zh-TW.rc |  13 ++++
 dll/cpl/sysdm/precomp.h     |   1 +
 dll/cpl/sysdm/resource.h    |  38 +++++++-----
 dll/cpl/sysdm/userprofile.c | 142 +++++++++++++++++++++++++++++++++++++++++++-
 28 files changed, 487 insertions(+), 19 deletions(-)

diff --git a/dll/cpl/sysdm/lang/bg-BG.rc b/dll/cpl/sysdm/lang/bg-BG.rc
index b8c362698f..c25f67c14d 100644
--- a/dll/cpl/sysdm/lang/bg-BG.rc
+++ b/dll/cpl/sysdm/lang/bg-BG.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Отказ", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Пускане и възстановяване"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Приложение за таблото за управление на уредбата"
     IDS_WARNINITIALSIZE "Въведете числена стойност за началния размер на 
страниращия файл."
     IDS_WARNMAXIMUMSIZE "Въведете числена стойност за върховия размер на 
страниращия файл."
diff --git a/dll/cpl/sysdm/lang/cs-CZ.rc b/dll/cpl/sysdm/lang/cs-CZ.rc
index d49c90479d..72d1da8bc4 100644
--- a/dll/cpl/sysdm/lang/cs-CZ.rc
+++ b/dll/cpl/sysdm/lang/cs-CZ.rc
@@ -170,6 +170,18 @@ BEGIN
     PUSHBUTTON "Storno", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Spuštění a zotavení"
@@ -305,6 +317,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Systémový aplet kontrolních panelů"
     IDS_WARNINITIALSIZE "Zadejte číselnou hodnotu pro počáteční velikost 
stránkovacího souboru."
     IDS_WARNMAXIMUMSIZE "Zadejte číselnou hodnotu pro maximální velikost 
stránkovacího souboru."
diff --git a/dll/cpl/sysdm/lang/da-DK.rc b/dll/cpl/sysdm/lang/da-DK.rc
index f1de9a57c0..4648fb3b76 100644
--- a/dll/cpl/sysdm/lang/da-DK.rc
+++ b/dll/cpl/sysdm/lang/da-DK.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Fortryd", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Opstart og Gendannelse"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/de-DE.rc b/dll/cpl/sysdm/lang/de-DE.rc
index e36fe0d2ac..5d2c476410 100644
--- a/dll/cpl/sysdm/lang/de-DE.rc
+++ b/dll/cpl/sysdm/lang/de-DE.rc
@@ -174,6 +174,18 @@ BEGIN
     PUSHBUTTON "Abbrechen", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Profiltyp ändern"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Servergespeichertes Profil", 
IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 145, 10
+    AUTORADIOBUTTON "&Lokales Profil", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 
145, 10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Abbrechen", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Starten und Wiederherstellen"
@@ -309,6 +321,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Obligatorisch"
     IDS_USERPROFILE_CONFIRM_DELETE "Soll das Profil für folgenden Benutzer 
gelöscht werden: %s?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Löschen bestätigen"
+    IDS_USERPROFILE_TYPE_TEXT "Soll das servergespeicherte Profil oder die 
lokal gespeicherte Kopie davon vom Betriebssystem verwendet werden, wenn sich 
%s am Computer anmeldet?"
     IDS_MESSAGEBOXTITLE "Systemsteuerungsoption ""System"""
     IDS_WARNINITIALSIZE "Geben Sie einen numerischen Wert für die Anfangsgröße 
der Auslagerungsdatei an."
     IDS_WARNMAXIMUMSIZE "Geben Sie einen numerischen Wert für die Maximalgröße 
der Auslagerungsdatei an."
diff --git a/dll/cpl/sysdm/lang/el-GR.rc b/dll/cpl/sysdm/lang/el-GR.rc
index 0ce6b37bfa..dd802367d0 100644
--- a/dll/cpl/sysdm/lang/el-GR.rc
+++ b/dll/cpl/sysdm/lang/el-GR.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Άκυρο", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Εκκίνηση και αποκατάσταση"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/en-US.rc b/dll/cpl/sysdm/lang/en-US.rc
index 40cffc4565..caff09b781 100644
--- a/dll/cpl/sysdm/lang/en-US.rc
+++ b/dll/cpl/sysdm/lang/en-US.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Cancel", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Startup and Recovery"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/es-ES.rc b/dll/cpl/sysdm/lang/es-ES.rc
index 70d8949b35..9beb41e188 100644
--- a/dll/cpl/sysdm/lang/es-ES.rc
+++ b/dll/cpl/sysdm/lang/es-ES.rc
@@ -167,6 +167,18 @@ BEGIN
     PUSHBUTTON "Cancelar", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Inicio y recuperación"
@@ -302,6 +314,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Applet de sistema del Panel de control"
     IDS_WARNINITIALSIZE "Introduzca el tamaño inicial del archivo de 
paginación."
     IDS_WARNMAXIMUMSIZE "Introduzca el tamaño máximo del archivo de 
paginación."
diff --git a/dll/cpl/sysdm/lang/fr-FR.rc b/dll/cpl/sysdm/lang/fr-FR.rc
index 77bc345257..d796e0e972 100644
--- a/dll/cpl/sysdm/lang/fr-FR.rc
+++ b/dll/cpl/sysdm/lang/fr-FR.rc
@@ -146,6 +146,18 @@ BEGIN
     PUSHBUTTON "Annuler", IDCANCEL, 196, 24, 50, 14
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_USERPROFILE DIALOGEX 0, 0, 256, 218
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Profils Utilisateurs"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Entrez une valeur numérique pour la taille initiale 
du fichier d'échange."
     IDS_WARNMAXIMUMSIZE "Entrez une valeur numérique pour la taille maximale 
du fichier d'échange."
diff --git a/dll/cpl/sysdm/lang/he-IL.rc b/dll/cpl/sysdm/lang/he-IL.rc
index a239fe0efc..78e56c22f4 100644
--- a/dll/cpl/sysdm/lang/he-IL.rc
+++ b/dll/cpl/sysdm/lang/he-IL.rc
@@ -167,6 +167,18 @@ BEGIN
     PUSHBUTTON "ביטול", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "הפעלה ושחזור"
@@ -302,6 +314,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/hu-HU.rc b/dll/cpl/sysdm/lang/hu-HU.rc
index 3ac63d7e51..2d250b5039 100644
--- a/dll/cpl/sysdm/lang/hu-HU.rc
+++ b/dll/cpl/sysdm/lang/hu-HU.rc
@@ -167,6 +167,18 @@ BEGIN
     PUSHBUTTON "Mégsem", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Indítás és helyreállítás"
@@ -302,6 +314,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/id-ID.rc b/dll/cpl/sysdm/lang/id-ID.rc
index 2c043e95b3..8183a238d2 100644
--- a/dll/cpl/sysdm/lang/id-ID.rc
+++ b/dll/cpl/sysdm/lang/id-ID.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Cancel", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Startup and Recovery"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/it-IT.rc b/dll/cpl/sysdm/lang/it-IT.rc
index 56cca496e0..250ff55d72 100644
--- a/dll/cpl/sysdm/lang/it-IT.rc
+++ b/dll/cpl/sysdm/lang/it-IT.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Annulla", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Avvio e recupero"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Applet di sistema del pannello di controllo"
     IDS_WARNINITIALSIZE "Immettere la dimensione iniziale del file di paging."
     IDS_WARNMAXIMUMSIZE "Immettere la dimensione massima del file di paging."
diff --git a/dll/cpl/sysdm/lang/ja-JP.rc b/dll/cpl/sysdm/lang/ja-JP.rc
index f903c6d9b5..c39afee09e 100644
--- a/dll/cpl/sysdm/lang/ja-JP.rc
+++ b/dll/cpl/sysdm/lang/ja-JP.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "キャンセル", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "起動と回復"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/nl-NL.rc b/dll/cpl/sysdm/lang/nl-NL.rc
index f996b289e8..9dbdee3c3e 100644
--- a/dll/cpl/sysdm/lang/nl-NL.rc
+++ b/dll/cpl/sysdm/lang/nl-NL.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Annuleren", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Opstart- en herstelinstellingen"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/no-NO.rc b/dll/cpl/sysdm/lang/no-NO.rc
index 00abf6dbf3..ef3c145d44 100644
--- a/dll/cpl/sysdm/lang/no-NO.rc
+++ b/dll/cpl/sysdm/lang/no-NO.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Avbryt", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Oppstart og gjenoppretting"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/pl-PL.rc b/dll/cpl/sysdm/lang/pl-PL.rc
index 03c5e247ce..f94c295792 100644
--- a/dll/cpl/sysdm/lang/pl-PL.rc
+++ b/dll/cpl/sysdm/lang/pl-PL.rc
@@ -174,6 +174,18 @@ BEGIN
     PUSHBUTTON "Anuluj", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Uruchamianie i odzyskiwanie"
@@ -309,6 +321,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System"
     IDS_WARNINITIALSIZE "Wprowadź wielkość dla początkowego rozmiaru pliku 
stronicowania."
     IDS_WARNMAXIMUMSIZE "Wprowadź wielkość dla maksymalnego rozmiaru pliku 
stronicowania."
diff --git a/dll/cpl/sysdm/lang/ro-RO.rc b/dll/cpl/sysdm/lang/ro-RO.rc
index 37420a4ace..e269094e5e 100644
--- a/dll/cpl/sysdm/lang/ro-RO.rc
+++ b/dll/cpl/sysdm/lang/ro-RO.rc
@@ -174,6 +174,18 @@ BEGIN
     PUSHBUTTON "A&nulează", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Pornire și Recuperare"
@@ -309,6 +321,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Specificare valori de sistem"
     IDS_WARNINITIALSIZE "Introduceți o valoare numerică pentru dimensiunea 
inițială a fișierului de paginare."
     IDS_WARNMAXIMUMSIZE "Introduceți o valoare numerică pentru dimensiunea 
maximă a fișierului de paginare."
diff --git a/dll/cpl/sysdm/lang/ru-RU.rc b/dll/cpl/sysdm/lang/ru-RU.rc
index 0fb93e5b31..217886d815 100644
--- a/dll/cpl/sysdm/lang/ru-RU.rc
+++ b/dll/cpl/sysdm/lang/ru-RU.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Отмена", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Загрузка и восстановление"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Обязательный"
     IDS_USERPROFILE_CONFIRM_DELETE "Вы действительно хотите удалить профиль 
пользователя %s?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Подтверждение удаления"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Панель управления системы"
     IDS_WARNINITIALSIZE "Введите числовое значение исходного размера файла 
подкачки."
     IDS_WARNMAXIMUMSIZE "Введите числовое значение для параметра максимальный 
размер файла подкачки."
diff --git a/dll/cpl/sysdm/lang/sk-SK.rc b/dll/cpl/sysdm/lang/sk-SK.rc
index 905a4ded47..afb21f9750 100644
--- a/dll/cpl/sysdm/lang/sk-SK.rc
+++ b/dll/cpl/sysdm/lang/sk-SK.rc
@@ -173,6 +173,18 @@ BEGIN
     PUSHBUTTON "Zrušiť", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Spúšťanie a obnovovanie"
@@ -308,6 +320,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/sq-AL.rc b/dll/cpl/sysdm/lang/sq-AL.rc
index f187550aac..ecaabd00f0 100644
--- a/dll/cpl/sysdm/lang/sq-AL.rc
+++ b/dll/cpl/sysdm/lang/sq-AL.rc
@@ -165,6 +165,18 @@ BEGIN
     PUSHBUTTON "Anulo", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Fillimi dhe Shërimi"
@@ -300,6 +312,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Sistemi i kontrollit panelit programeve"
     IDS_WARNINITIALSIZE "Futni një vlerë numerike për madhësinë fillestare e 
faqeve të dokumentave."
     IDS_WARNMAXIMUMSIZE "Futni një vlerë numerike për madhësinë maksimale e 
faqeve të dokumentave."
diff --git a/dll/cpl/sysdm/lang/sv-SE.rc b/dll/cpl/sysdm/lang/sv-SE.rc
index a801e2f178..5559dd4659 100644
--- a/dll/cpl/sysdm/lang/sv-SE.rc
+++ b/dll/cpl/sysdm/lang/sv-SE.rc
@@ -167,6 +167,18 @@ BEGIN
     PUSHBUTTON "Avbryt", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Start och återställning"
@@ -302,6 +314,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "System control panel applet"
     IDS_WARNINITIALSIZE "Enter a numeric value for the initial size of the 
paging file."
     IDS_WARNMAXIMUMSIZE "Enter a numeric value for the maximum size of the 
paging file."
diff --git a/dll/cpl/sysdm/lang/tr-TR.rc b/dll/cpl/sysdm/lang/tr-TR.rc
index ea5bd2f7c4..3ee8505bdc 100644
--- a/dll/cpl/sysdm/lang/tr-TR.rc
+++ b/dll/cpl/sysdm/lang/tr-TR.rc
@@ -167,6 +167,18 @@ BEGIN
     PUSHBUTTON "İptal", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Başlangıç ve Kurtarma"
@@ -302,6 +314,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Dizge Denetim Masası Uygulaması"
     IDS_WARNINITIALSIZE "Sayfalama kütüğünün başlangıç büyüklüğü için bir 
sayılık değer giriniz."
     IDS_WARNMAXIMUMSIZE "Sayfalama kütüğünün en çok büyüklüğü için bir sayılık 
değer giriniz."
diff --git a/dll/cpl/sysdm/lang/uk-UA.rc b/dll/cpl/sysdm/lang/uk-UA.rc
index 3ab9a3e242..fc856bef26 100644
--- a/dll/cpl/sysdm/lang/uk-UA.rc
+++ b/dll/cpl/sysdm/lang/uk-UA.rc
@@ -173,6 +173,18 @@ BEGIN
     PUSHBUTTON "Скасувати", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "Завантаження й відновлення"
@@ -308,6 +320,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Обов'язковий"
     IDS_USERPROFILE_CONFIRM_DELETE "Ви дійсно хочете видалити профіль %s?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Підтвердження видалення"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "Елемент панелі керування"
     IDS_WARNINITIALSIZE "Введіть числове значення для початкового розміру 
файлу довантаження."
     IDS_WARNMAXIMUMSIZE "Введіть числове значення для максимального розміру 
файлу довантаження."
diff --git a/dll/cpl/sysdm/lang/zh-CN.rc b/dll/cpl/sysdm/lang/zh-CN.rc
index 24c0b8106c..fbe20505f1 100644
--- a/dll/cpl/sysdm/lang/zh-CN.rc
+++ b/dll/cpl/sysdm/lang/zh-CN.rc
@@ -168,6 +168,18 @@ BEGIN
     PUSHBUTTON "取消", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "启动和故障恢复"
@@ -303,6 +315,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "系统控制面板小程序"
     IDS_WARNINITIALSIZE "为分页文件的初始大小输入一个数字值。"
     IDS_WARNMAXIMUMSIZE "为分页文件的最大大小输入一个数字值。"
diff --git a/dll/cpl/sysdm/lang/zh-TW.rc b/dll/cpl/sysdm/lang/zh-TW.rc
index b0a96bd2bb..cb3517923e 100644
--- a/dll/cpl/sysdm/lang/zh-TW.rc
+++ b/dll/cpl/sysdm/lang/zh-TW.rc
@@ -168,6 +168,18 @@ BEGIN
     PUSHBUTTON "取消", IDCANCEL, 196, 198, 54, 15
 END
 
+IDD_USERPROFILE_TYPE DIALOGEX 0, 0, 225, 103
+STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
+CAPTION "Change Profile Type"
+FONT 8, "MS Shell Dlg"
+BEGIN
+    LTEXT "", IDC_USERPROFILE_TYPE_TEXT, 7, 11, 206, 28
+    AUTORADIOBUTTON "&Roaming profile", IDC_USERPROFILE_TYPE_ROAMING, 60, 49, 
145, 10
+    AUTORADIOBUTTON "&Local profile", IDC_USERPROFILE_TYPE_LOCAL, 60, 63, 145, 
10
+    DEFPUSHBUTTON "OK", IDOK, 60, 82, 50, 14
+    PUSHBUTTON "Cancel", IDCANCEL, 122, 82, 50, 14
+END
+
 IDD_STARTUPRECOVERY DIALOGEX 6, 18, 252, 280
 STYLE DS_SHELLFONT | DS_MODALFRAME | DS_CONTEXTHELP | WS_POPUP | WS_VISIBLE | 
WS_CAPTION | WS_SYSMENU
 CAPTION "啓動和故障恢復"
@@ -303,6 +315,7 @@ BEGIN
     IDS_USERPROFILE_MANDATORY "Mandatory"
     IDS_USERPROFILE_CONFIRM_DELETE "Are you sure you want to delete %s's 
profile?"
     IDS_USERPROFILE_CONFIRM_DELETE_TITLE "Confirm Delete"
+    IDS_USERPROFILE_TYPE_TEXT "When %s logs onto this computer, should the 
operating system use the roaming profile or just the locally cached copy of the 
roaming profile."
     IDS_MESSAGEBOXTITLE "系統控制面板小程序"
     IDS_WARNINITIALSIZE "爲分頁文件的初始大小輸入一個數字值。"
     IDS_WARNMAXIMUMSIZE "爲分頁文件的最大大小輸入一個數字值。"
diff --git a/dll/cpl/sysdm/precomp.h b/dll/cpl/sysdm/precomp.h
index 5756e5cc5e..bc27dd9c77 100644
--- a/dll/cpl/sysdm/precomp.h
+++ b/dll/cpl/sysdm/precomp.h
@@ -13,6 +13,7 @@
 #include <winreg.h>
 #include <wingdi.h>
 #include <wincon.h>
+#include <windowsx.h>
 #include <tchar.h>
 #include <shellapi.h>
 #include <shlobj.h>
diff --git a/dll/cpl/sysdm/resource.h b/dll/cpl/sysdm/resource.h
index c920876d11..6b873702d8 100644
--- a/dll/cpl/sysdm/resource.h
+++ b/dll/cpl/sysdm/resource.h
@@ -38,26 +38,27 @@
 #define IDS_USERPROFILE_MANDATORY 79
 #define IDS_USERPROFILE_CONFIRM_DELETE 80
 #define IDS_USERPROFILE_CONFIRM_DELETE_TITLE 81
+#define IDS_USERPROFILE_TYPE_TEXT 82
 
-#define IDS_MESSAGEBOXTITLE  82
-#define IDS_WARNINITIALSIZE  83
-#define IDS_WARNMAXIMUMSIZE  84
-#define IDS_WARNINITIALRANGE 85
-#define IDS_WARNMAXIMUMRANGE 86
-#define IDS_PAGEFILE_NONE    87
-#define IDS_PAGEFILE_SYSTEM  88
-#define IDS_INFOREBOOT       89
+#define IDS_MESSAGEBOXTITLE  100
+#define IDS_WARNINITIALSIZE  101
+#define IDS_WARNMAXIMUMSIZE  102
+#define IDS_WARNINITIALRANGE 103
+#define IDS_WARNMAXIMUMRANGE 104
+#define IDS_PAGEFILE_NONE    105
+#define IDS_PAGEFILE_SYSTEM  106
+#define IDS_INFOREBOOT       107
 
-#define IDS_HWPROFILE_CONFIRM_DELETE_TITLE 90
-#define IDS_HWPROFILE_CONFIRM_DELETE       91
-#define IDS_HWPROFILE_ALREADY_IN_USE       92
-#define IDS_HWPROFILE_PROFILE              93
-#define IDS_HWPROFILE_WARNING              94
+#define IDS_HWPROFILE_CONFIRM_DELETE_TITLE 120
+#define IDS_HWPROFILE_CONFIRM_DELETE       121
+#define IDS_HWPROFILE_ALREADY_IN_USE       122
+#define IDS_HWPROFILE_PROFILE              123
+#define IDS_HWPROFILE_WARNING              124
 
-#define IDS_MEGAHERTZ 95
-#define IDS_GIGAHERTZ 96
+#define IDS_MEGAHERTZ 130
+#define IDS_GIGAHERTZ 131
 
-#define IDS_UPTIME_FORMAT 97
+#define IDS_UPTIME_FORMAT 140
 
 /* Propsheet - general */
 #define IDD_PROPPAGEGENERAL  100
@@ -101,6 +102,11 @@
 #define IDC_USERPROFILE_COPY   505
 #define IDC_USERACCOUNT_LINK   506
 
+/* Change Profile Type */
+#define IDD_USERPROFILE_TYPE         520
+#define IDC_USERPROFILE_TYPE_TEXT    521
+#define IDC_USERPROFILE_TYPE_ROAMING 522
+#define IDC_USERPROFILE_TYPE_LOCAL   523
 
 /* Environment variables */
 #define IDD_ENVIRONMENT_VARIABLES  600
diff --git a/dll/cpl/sysdm/userprofile.c b/dll/cpl/sysdm/userprofile.c
index 209d0c5eaa..6b6c402b7a 100644
--- a/dll/cpl/sysdm/userprofile.c
+++ b/dll/cpl/sysdm/userprofile.c
@@ -11,6 +11,7 @@
 #include "precomp.h"
 #include <sddl.h>
 
+#include <debug.h>
 
 typedef struct _PROFILEDATA
 {
@@ -19,8 +20,130 @@ typedef struct _PROFILEDATA
 } PROFILEDATA, *PPROFILEDATA;
 
 
+static
+BOOL
+OnProfileTypeInit(
+    HWND hwndDlg,
+    PPROFILEDATA pProfileData)
+{
+    PWSTR pszRawBuffer = NULL, pszCookedBuffer = NULL;
+    INT nLength;
+
+    nLength = LoadStringW(hApplet, IDS_USERPROFILE_TYPE_TEXT, 
(PWSTR)&pszRawBuffer, 0);
+    pszRawBuffer = NULL;
+    if (nLength == 0)
+        return FALSE;
+
+    pszRawBuffer = HeapAlloc(GetProcessHeap(), 0, (nLength + 1) * 
sizeof(WCHAR));
+    if (pszRawBuffer == NULL)
+        return FALSE;
+
+    LoadStringW(hApplet, IDS_USERPROFILE_TYPE_TEXT, pszRawBuffer, nLength + 1);
+
+    pszCookedBuffer = HeapAlloc(GetProcessHeap(), 0, (nLength + 
wcslen(pProfileData->pszFullName) + 1) * sizeof(WCHAR));
+    if (pszCookedBuffer == NULL)
+        goto done;
+
+    swprintf(pszCookedBuffer, pszRawBuffer, pProfileData->pszFullName);
+
+    /* Set the full text */
+    SetDlgItemText(hwndDlg, IDC_USERPROFILE_TYPE_TEXT, pszCookedBuffer);
+
+    /* FIXME: Right now, we support local user profiles only! */
+    EnableWindow(GetDlgItem(hwndDlg, IDC_USERPROFILE_TYPE_ROAMING), FALSE);
+    Button_SetCheck(GetDlgItem(hwndDlg, IDC_USERPROFILE_TYPE_LOCAL), 
BST_CHECKED);
+    EnableWindow(GetDlgItem(hwndDlg, IDOK), FALSE);
+
+done:
+    if (pszCookedBuffer != NULL)
+        HeapFree(GetProcessHeap(), 0, pszCookedBuffer);
+
+    if (pszRawBuffer != NULL)
+        HeapFree(GetProcessHeap(), 0, pszRawBuffer);
+
+    return TRUE;
+}
+
+
+static
+INT_PTR
+CALLBACK
+UserProfileTypeDlgProc(HWND hwndDlg,
+                       UINT uMsg,
+                       WPARAM wParam,
+                       LPARAM lParam)
+{
+    switch (uMsg)
+    {
+        case WM_INITDIALOG:
+            OnProfileTypeInit(hwndDlg, (PPROFILEDATA)lParam);
+            return TRUE;
+
+        case WM_DESTROY:
+            break;
+
+        case WM_COMMAND:
+            switch (LOWORD(wParam))
+            {
+                case IDOK:
+                case IDCANCEL:
+                    EndDialog(hwndDlg,
+                              LOWORD(wParam));
+                    return TRUE;
+            }
+            break;
+    }
+
+    return FALSE;
+}
+
+
+static
+BOOL
+ChangeUserProfileType(
+    _In_ HWND hwndDlg)
+{
+    HWND hwndListView;
+    LVITEM Item;
+    INT iSelected;
+
+    DPRINT("ChangeUserProfileType(%p)\n", hwndDlg);
+
+    hwndListView = GetDlgItem(hwndDlg, IDC_USERPROFILE_LIST);
+    if (hwndListView == NULL)
+        return FALSE;
+
+    iSelected = ListView_GetNextItem(hwndListView, -1, LVNI_SELECTED);
+    if (iSelected == -1)
+        return FALSE;
+
+    ZeroMemory(&Item, sizeof(LVITEM));
+    Item.mask = LVIF_PARAM;
+    Item.iItem = iSelected;
+    Item.iSubItem = 0;
+    if (!ListView_GetItem(hwndListView, &Item))
+        return FALSE;
+
+    if (Item.lParam == 0)
+        return FALSE;
+
+    if (DialogBoxParam(hApplet,
+                       MAKEINTRESOURCE(IDD_USERPROFILE_TYPE),
+                       hwndDlg,
+                       UserProfileTypeDlgProc,
+                       (LPARAM)Item.lParam) == IDOK)
+    {
+        /* FIXME: Update the profile list view */
+        return TRUE;
+    }
+
+    return FALSE;
+}
+
+
 static VOID
-SetListViewColumns(HWND hwndListView)
+SetListViewColumns(
+    _In_ HWND hwndListView)
 {
     LV_COLUMN column;
     RECT rect;
@@ -73,7 +196,8 @@ static VOID
 AddUserProfile(
     _In_ HWND hwndListView,
     _In_ LPTSTR lpProfileSid,
-    _In_ PSID pMySid)
+    _In_ PSID pMySid,
+    _In_ HKEY hProfileKey)
 {
     PPROFILEDATA pProfileData = NULL;
     PWSTR pszAccountName = NULL;
@@ -202,6 +326,7 @@ AddUserProfiles(
     _In_ HWND hwndListView)
 {
     HKEY hKeyUserProfiles = INVALID_HANDLE_VALUE;
+    HKEY hProfileKey;
     DWORD dwIndex;
     WCHAR szProfileSid[64];
     DWORD dwSidLength;
@@ -244,7 +369,15 @@ AddUserProfiles(
                           &ftLastWrite))
             break;
 
-        AddUserProfile(hwndListView, szProfileSid, pTokenUser->User.Sid);
+        if (RegOpenKeyExW(hKeyUserProfiles,
+                          szProfileSid,
+                          0,
+                          KEY_READ,
+                          &hProfileKey) == ERROR_SUCCESS)
+        {
+            AddUserProfile(hwndListView, szProfileSid, pTokenUser->User.Sid, 
hProfileKey);
+            RegCloseKey(hProfileKey);
+        }
     }
 
     if (ListView_GetItemCount(hwndListView) != 0)
@@ -327,6 +460,8 @@ DeleteUserProfile(
     INT iSelected;
     PPROFILEDATA pProfileData;
 
+    DPRINT("DeleteUserProfile()\n");
+
     hwndListView = GetDlgItem(hwndDlg, IDC_USERPROFILE_LIST);
     if (hwndListView == NULL)
         return FALSE;
@@ -392,6 +527,7 @@ UserProfileDlgProc(HWND hwndDlg,
                     return TRUE;
 
                 case IDC_USERPROFILE_CHANGE:
+                    ChangeUserProfileType(hwndDlg);
                     break;
 
                 case IDC_USERPROFILE_DELETE:

Reply via email to