Вниз
Скачать: CL | DM;

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

← →
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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
6-1121179345
n0p
2005-07-12 18:42
2005.10.30
Indy9: Nagle


14-1128946953
Антоний
2005-10-10 16:22
2005.10.30
Вот такое письмо


14-1128921696
Ega23
2005-10-10 09:21
2005.10.30
С днем рождения! 10 октября


6-1120718689
luke
2005-07-07 10:44
2005.10.30
Отправка нескольких сообщений через NMSMTP


4-1124892466
Shopot
2005-08-24 18:07
2005.10.30
Как правильно работать с Com портом используя события.




   Наверх