List all user profiles (SIDs only).

svn path=/trunk/; revision=30559
This commit is contained in:
Eric Kohl 2007-11-18 19:54:04 +00:00
parent 15fbbf1138
commit 35f10174b2

View file

@ -61,12 +61,65 @@ SetListViewColumns(HWND hwndListView)
}
static VOID
AddUserProfile(HWND hwndListView,
LPTSTR lpProfileSid)
{
LV_ITEM lvi;
INT iItem;
memset(&lvi, 0x00, sizeof(lvi));
lvi.mask = LVIF_TEXT | LVIF_STATE;
lvi.pszText = lpProfileSid;
lvi.state = 0;
iItem = ListView_InsertItem(hwndListView, &lvi);
}
static VOID
AddUserProfiles(HWND hwndListView)
{
HKEY hKeyUserProfiles;
DWORD dwIndex;
TCHAR szProfileSid[64];
DWORD dwSidLength;
FILETIME ftLastWrite;
if (RegOpenKeyEx(HKEY_LOCAL_MACHINE,
_T("Software\\Microsoft\\Windows NT\\CurrentVersion\\ProfileList"),
0,
KEY_READ,
&hKeyUserProfiles))
return;
for (dwIndex = 0; ; dwIndex++)
{
dwSidLength = 64;
if (RegEnumKeyEx(hKeyUserProfiles,
dwIndex,
szProfileSid,
&dwSidLength,
NULL,
NULL,
NULL,
&ftLastWrite))
break;
AddUserProfile(hwndListView, szProfileSid);
}
RegCloseKey(hKeyUserProfiles);
}
static VOID
OnInitDialog(HWND hwndDlg)
{
/* Initialize the list view control */
SetListViewColumns(GetDlgItem(hwndDlg, IDC_USERPROFILE_LIST));
AddUserProfiles(GetDlgItem(hwndDlg, IDC_USERPROFILE_LIST));
/* Disable the "Delete" and "Copy To" buttons if the user is not an admin */
if (!IsUserAdmin())
{