Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.10.30;
Скачать: [xml.tar.bz2];

Вниз

Как узнать что превилигия включена или выключена?   Найти похожие ветки 

 
NikNet ©   (2005-08-23 21:02) [0]

Как узнать что например DEBUG привилигия включена или выключена?
и ещё каку знать есть ли у пользователя эта  привилигия или
надо добавить?


 
alpet ©   (2005-08-23 21:08) [1]

Может быть ПРИВИЛЕГИЯ?


 
Zeqfreed ©   (2005-08-23 21:34) [2]

NikNet ©   (23.08.05 21:02)

function SetPrivilege(const PrivilegeName : string; const Enable : boolean) : boolean;
var
tpOld, tp : TTokenPrivileges;
Token : Cardinal;
dwRetLen : DWORD;
begin
Result := False;
OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, Token);

tp.PrivilegeCount := 1;
if LookupPrivilegeValue(nil, PChar(PrivilegeName), tp.Privileges[0].LUID) then begin
 if Enable then
  tp.Privileges[0].Attributes:= SE_PRIVILEGE_ENABLED
 else
  tp.Privileges[0].Attributes:= 0;

 dwRetLen := 0;
 Result := AdjustTokenPrivileges(Token, False, tp, SizeOf(tpOld), tpOld, dwRetLen);
end;

CloseHandle(Token);
end;


Вот код из одного FAQ"а, почитай справку по ф-циям.


 
BiN ©   (2005-08-24 09:21) [3]

>>NikNet ©   (23.08.05 21:02)  

Как узнать что например DEBUG привилигия включена или выключена?
и ещё каку знать есть ли у пользователя эта  привилигия или
надо добавить?


Для получения списка привилегий, ассоциированных с учетной записью, используется LsaEnumerateAccountRights.
Для получения списка привилегий, ассоциированных с маркером процесса, - GetTokenInformation.

>>Zeqfreed ©   (23.08.05 21:34) [2]

...
Result := AdjustTokenPrivileges(...


Список привилегий "закрепляется" за маркером при его создании.
Так вот, если в маркере будет отсутствовать целевая привилегия, и мы попытаемся установить ее в состояние "enabled", то AdjustTokenPrivileges вернет True, а привилегия при этом не будет установлена. Для того, чтобы проверить установлена привилегия, нужно проверять еще GetLastError на равенство ERROR_SUCCESS.



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.10.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.054 c
1-1128670543
danilabagroff
2005-10-07 11:35
2005.10.30
OLE Error 800A03EC


14-1128763750
Buss
2005-10-08 13:29
2005.10.30
Сайт


14-1128445974
Kerk
2005-10-04 21:12
2005.10.30
провокация, которая может питать экстремистские настроения


2-1128439767
Sysanin
2005-10-04 19:29
2005.10.30
Уменьшение размера exe


1-1128596503
Dysan
2005-10-06 15:01
2005.10.30
консоль для приложения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский