用当前进程关闭系统

来源:互联网 发布:辐射4 超低配置优化 编辑:程序博客网 时间:2024/05/16 15:10
 
  1. BOOL OpenProcessToken(
  2.   HANDLE ProcessHandle, // handle to process
  3.   DWORD DesiredAccess,  // desired access to process
  4.   PHANDLE TokenHandle   // pointer to handle of open access token
  5. );
  6. //GetCurrentProcess()
  7. TOKEN_PRIVILEGES tp;
  1. HANDLE hToken;
  2. OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES,&hToken )
  1. LUID luid; 
  2. LookupPrivilegeValue(MachineName, SE_SHUTDOWN_NAME, &luid)
  1. tp.PrivilegeCount = 1;
    tp.Privileges[0].Luid = luid;
    tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
  2. AdjustTokenPrivileges(hToken,FALSE,&tp,sizeof(TOKEN_PRIVILEGES),NULL, NULL ); //到这里,是取得权限///
    ExitWindowsEx(EWX_POWEROFF,EWX_FORCE); 

 

原创粉丝点击