![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Определить имеет ли пользователь привилегии администратора [D7]
Игорь © (2009-12-13 13:05:00)Подскажите как определить имеет ли пользователь привилегии администратора, куда копать вообще?
TIF (2009-12-13 20:13:00) [1]Очень просто определить. На CodeCentral даже пример есть
http://cc.embarcadero.com/item/24512
* Для Windows 2000и Windows XPможно воспользоваться функцией IsUserAnAdmin- обёрткой для CheckTokenMembership
http://msdn.microsoft.com/en-us/library/bb776463%28loband%29.aspx
* Для Windows Vistaи Windows 7можно также воспользоваться этой функцией, однако во-первых, Microsoft предупреждает, что она может быть изменена или вообще исключена в последующих версиях Windows, а во-вторых, чаще всего необходимо учитывать и UAC. Поэтому для этих ОС правильнее воспользоваться функцией GetTokenInformation
http://msdn.microsoft.com/en-us/library/aa446671%28loband%29.aspx
определив во втором входном параметре TokenInformationClass, что мы хотим получить TokenElevationType-информацию. Результат - одно из значений перечисляемого типа TOKEN_ELEVATION_TYPE
http://msdn.microsoft.com/en-us/library/bb530718%28loband%29.aspx
Игорь (2009-12-13 13:34:00) [2]Вопрос отпал, проблемма была с Windows 7, пока что
решил проблемму проверкой на наличие SeDebugPrivilege
> sniknik © (13.12.09 13:24) [1]
Спасибо
sniknik (2009-12-13 13:24:00) [3]http://www.delphimaster.ru/cgi-bin/forum.pl?id=1259658224&n=5
> В гугле что то все вертится вокруг проверки является ли текущий админом...
копай в гугл...