Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.31;
Скачать: CL | DM;

Вниз

Как узнать права пользователя в Win2000/XP?   Найти похожие ветки 

 
Mazer   (2004-09-23 21:04) [0]

Привет!
сабж!
нужно знать, "пользователь" это или "админ"! :)


 
Cobalt ©   (2004-09-23 22:59) [1]

могу посоветовать читать
С:\Program Files\Common Files\Borland Shared\MSHelp\WIN32.HLP

Открываешь статью с названием "Security" и начинаешь читать.


 
Внук ©   (2004-09-24 08:18) [2]

Лучше прочитать соответствующие главы книги Рихтера и Кларка "Программирование серверных приложений для Microsoft Windows 2000"


 
xShadow ©   (2004-09-24 11:54) [3]

function IsAdmin: Boolean;
const
SECURITY_NT_AUTHORITY : TSIDIdentifierAuthority = (Value: (0, 0, 0, 0, 0, 5));
SECURITY_BUILTIN_DOMAIN_RID                     = $00000020;
DOMAIN_ALIAS_RID_ADMINS                         = $00000220;
var
hAccessToken       : THandle;
ptgGroups          : PTokenGroups;
dwInfoBufferSize   : DWORD;
psidAdministrators : PSID;
i                  : Integer;
bSuccess           : BOOL;
begin
if Win32Platform <> VER_PLATFORM_WIN32_NT then
begin
  Result := True;
  Exit;
end;

Result := False;
bSuccess := OpenThreadToken(GetCurrentThread, TOKEN_QUERY, True, hAccessToken);
if not bSuccess then
begin
  if GetLastError = ERROR_NO_TOKEN then
  begin
    bSuccess := OpenProcessToken(GetCurrentProcess, TOKEN_QUERY, hAccessToken);
  end;
end;
if bSuccess then
begin
  GetMem(ptgGroups, 1024);
  bSuccess := GetTokenInformation(hAccessToken, TokenGroups, ptgGroups, 1024, dwInfoBufferSize);
  CloseHandle(hAccessToken);
  if bSuccess then
  begin
    AllocateAndInitializeSid(SECURITY_NT_AUTHORITY, 2, SECURITY_BUILTIN_DOMAIN_RID, DOMAIN_ALIAS_RID_ADMINS, 0, 0, 0, 0, 0, 0, psidAdministrators);
    {$R-}
    for i := 0 to ptgGroups.GroupCount-1 do
    begin
      if EqualSid(psidAdministrators, ptgGroups.Groups[i].Sid) then
      begin
        Result := True;
        Break;
      end;
    end;
    {$R+}
    FreeSid(psidAdministrators);
  end;
  FreeMem(ptgGroups);
end;
end;


 
Mazer   (2004-09-24 23:32) [4]

xShadow
спасибо!!!



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

Текущий архив: 2004.10.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
4-1095790953
GuAV
2004-09-21 22:22
2004.10.31
RUNDLL32 MYDLL.DLL,MyProc


14-1097491062
vajo
2004-10-11 14:37
2004.10.31
ICQ


1-1097829218
ghg
2004-10-15 12:33
2004.10.31
дин.массивы и указатели


14-1097271932
Knight
2004-10-09 01:45
2004.10.31
У кого есть описание или help по FastLib?


3-1096880740
Начинающий освоение БД
2004-10-04 13:05
2004.10.31
Массив в поле таблицы