⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 可获得管理员权限的登录方法.txt

📁 可获得管理员权限的登录方法
💻 TXT
字号:
const 
SECURITY_NT_AUTHORITY: TSIDIdentifierAuthority = 
(Value: (0, 0, 0, 0, 0, 5)); 
SECURITY_BUILTIN_DOMAIN_RID = $00000020; 
DOMAIN_ALIAS_RID_ADMINS = $00000220; 

function IsAdmin: Boolean; 
var 
hAccessToken: THandle; 
ptgGroups: PTokenGroups; 
dwInfoBufferSize: DWORD; 
psidAdministrators: PSID; 
x: Integer; 
bSuccess: BOOL; 
begin 
Result := False; 
bSuccess := OpenThreadToken(GetCurrentThread, TOKEN_QUERY, True, 
hAccessToken); 
if not bSuccess then 
begin 
if GetLastError = ERROR_NO_TOKEN then 
bSuccess := OpenProcessToken(GetCurrentProcess, TOKEN_QUERY, 
hAccessToken); 
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 x := 0 to ptgGroups.GroupCount - 1 do 
if EqualSid(psidAdministrators, ptgGroups.Groups[x].Sid) then 
begin 
Result := True; 
Break; 
end; 
{$R+} 
FreeSid(psidAdministrators); 
end; 
FreeMem(ptgGroups); 
end; 
end; 

procedure TForm1.Button1Click(Sender: TObject); 
begin 
if isAdmin then 
begin 
ShowMessage('以系统管理员身份登录'); 
end; 
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -