Как я могу проверить, использует ли конечный пользователь перемещаемый профиль в Windows Vista?
Я знаю, что это действительно простой вопрос, но как я могу проверить, использует ли конечный пользователь перемещаемый профиль в Windows Vista?
Я должен уточнить - я не управляю сетью пользователя... Я поддерживаю продукт, который не работает с перемещаемыми профилями.
2 ответа
Если вы знаете имя пользователя и домен пользователя, вы можете проверить их.
- Нажмите Пуск и щелкните правой кнопкой мыши Компьютер.
- Выберите Свойства.
- Нажмите на Дополнительные параметры системы слева.
- На вкладке "Дополнительно" нажмите кнопку "Настройки" в разделе "Профили пользователей".
- Найдите DOMAIN\user в списке и посмотрите направо. Тип будет либо Местным, либо Роумингом.
Сначала найдите SID пользователя (в строковом формате). Метод, который вы используете, зависит от вашего языка программирования. Однако вот один из способов сделать это (VBScript):
'Note: you must have domain/corporate network connectivity in order to complete this query for a domain account
'This will not work for a remote user that is not connected via VPN, for example.
strUserName = "flesniak"
strNetBIOSDomainName = "DOMAIN" 'Use the computer name if checking local account
Set objWMI = GetObject("winmgmts:\\.\root\cimv2")
Set objAccount = objWMI.Get("Win32_UserAccount.Name='" & strUserName & "',Domain='" & strNetBIOSDomainName & "'")
strUserSID = objAccount.SID
Получив идентификатор безопасности, запросите ключ реестра:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\<SID>
и проверьте строковое значение:
CentralProfile
Если значение CentralProfile пустое или отсутствует, то это локальный профиль. Если CentralProfile настроен как путь UNC, то это перемещаемый профиль.