![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
racner |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 6.10.2009 Репутация: нет Всего: нет |
Существует замечательный и простой способ менять свойства учетных записей по средством вызвова NetUserSetInfo..
Для изменения флагов существует структура USER_INFO_1008 Вот ссылочка на статью в MSDN на счет NetUserSetInfo., где в качестве примера как раз используется USER_INFO_1008: http://msdn.microsoft.com/en-us/library/aa...9(v=VS.85).aspx В примере мы видим как учетной записи задается: ui.usri1008_flags = UF_SCRIPT | UF_ACCOUNTDISABLE; Ручками в Windows данные флаги выставляются, если нажать правой кнопкой на Мой Компьютер, выбрать пункт manage(управление) вот здесь: ![]() И действительно, после выполнения данной программы вставляется галочка "account is disabled" . Но все мои попытки выставить галочку User mast change password at next logon посредством флага UF_PASSWORD_EXPIRED привели к неудаче :-( . Хотя если ручками выставить эту галку - данный флаг у уч. записи появляется. Не могу понять, в чем дело? Вот я составил тестовую программу в которой все наглядно показано:
Если создать консольное приложение и вставить туда этот код - должно заработать (в VS2005 - уж точно). Посмотрите пожалуйста, в чем же может быть загвостка ? =) Это сообщение отредактировал(а) racner - 10.7.2010, 15:39 |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 40 Всего: 223 |
NetUserSetInfo завершается успешно? Если нет, то что возвращает GetLastError?
|
|||
|
||||
racner |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 6.10.2009 Репутация: нет Всего: нет |
Да, NetUserSetInfo возвращает NERR_Success.
Вот что выводится на консоль у меня на компьютере в результатае выполнения программы: NERR_Success Number of accounts: 5 of 5 Administrator Guest1 John nnn136 __vmware_user__ Input name ->Guest1 flag: 513 UF_SCRIPT UF_NORMAL_ACCOUNT Operation complite: flag: 513 UF_SCRIPT UF_NORMAL_ACCOUNT Как видно, после выполнения операции флаг остался таким же. Хотя если вместо UF_PASSWORD_EXPIRED указать UF_ACCOUNTDISABLE (как в примере в MSDN) в результате выполняния флаг добавляется. Я вот думаю, может на англоязычном форуме спросить, только я точно не знаю, на каком и как лучше? ![]() Это сообщение отредактировал(а) racner - 12.7.2010, 09:32 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |