Перечислить привилегии пользователяDelphi , ОС и Железо , WindowsПеречислить привилегии пользователя
Оформил: DeeCo procedure TForm1.Button1Click(Sender: TObject); const TokenSize = 800; // (SizeOf(Pointer)=4 *200) var hToken: THandle; pTokenInfo: PTOKENPRIVILEGES; ReturnLen: Cardinal; i: Integer; PrivName: PChar; DisplayName: PChar; NameSize: Cardinal; DisplSize: Cardinal; LangId: Cardinal; begin GetMem(pTokenInfo, TokenSize); if not OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then ShowMessage('OpenProcessToken error'); if not GetTokenInformation(hToken, TokenPrivileges, pTokenInfo, TokenSize, ReturnLen) then ShowMessage('GetTokenInformation error'); GetMem(PrivName, 255); GetMem(DisplayName, 255); for i := 0 to pTokenInfo.PrivilegeCount - 1 do begin DisplSize := 255; NameSize := 255; LookupPrivilegeName(nil, pTokenInfo.Privileges[i].Luid, PrivName, Namesize); LookupPrivilegeDisplayName(nil, PrivName, DisplayName, DisplSize, LangId); ListBox1.Items.Add(PrivName +^I + DisplayName); end; FreeMem(PrivName); FreeMem(DisplayName); FreeMem(pTokenInfo); end; Статья Перечислить привилегии пользователя раздела ОС и Железо Windows может быть полезна для разработчиков на Delphi и FreePascal. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |