简单问题:如何在NT(2000 AND XP)下关机,要如何获得权限?(99分)

  • 主题发起人 主题发起人 有故事的人
  • 开始时间 开始时间

有故事的人

Unregistered / Unconfirmed
GUEST, unregistred user!
菜鸟问题:如何在NT(2000 AND XP)下关机,要如何获得权限![:(]要详细的注释.才有分
 
procedure ShutDownWindowsNT;
const SE_SHUTDOWN_NAME='SeShutdownPrivilege';
var hToken:THandle;
tkp:TTokenPrivileges;
tkpo:TTokenPrivileges;
zero:DWORD;
begin
zero:=0;
OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,hToken);
LookupPrivilegeValue(nil,SE_SHUTDOWN_NAME,tkp.Privileges[0].Luid);
tkp.PrivilegeCount:=1;
tkp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken,False,tkp,SizeOf(TTokenPrivileges),tkpo,zero);
//以上代码获取权限
ExitWindowsEx(EWX_POWEROFF,0);
end;
 
还有没有其它方法!!!!
月结
 
接受答案了.
 
后退
顶部