MFC 注销-关机-重启

在这里插入图片描述
在这里插入图片描述
GetCurrentProcessID 得到当前进程的ID

OpenProcessToken 得到进程的令牌句柄

LookupPrivilegeValue 查询进程的权限

AdjustTokenPrivileges 判断令牌权限

BOOL OpenProcessToken(

      HANDLE     ProcessHandle,      //要修改访问权限的进程句柄

      DWORD     DesiredAccess,       //指定你要进行的操作类型

      PHANDLE     TokenHandle        //返回的访问令牌指针

);

第一参数是要修改访问权限的进程句柄;

第三个参数就是返回的访问令牌指针;

第二个参数指定你要进行的操作类型,

如要修改令牌我们要指定第二个参数为TOKEN_ADJUST_PRIVILEGES(其它一些参数可参考Platform SDK)。

通过这个函数我们就可以得到当前进程的访问令牌的句柄(指定函数的第一个参数为GetCurrentProcess()就可以了)。

接着我们可以调用AdjustTokenPrivileges对这个访问令牌进行修改。

在这里插入图片描述

LookupPrivilegeValue 函数查看系统权限的特权值,返回信息到一个LUID结构体里。
  BOOL LookupPrivilegeValue(LPCTSTR lpSystemName,LPCTSTR lpName,PLUID lpLuid);
  第一个参数表示所要查看的系统,本地系统直接用NULL
  第二个参数表示所要查看的特权信息的名称,定义在winnt.h中,具体指请MSDN索引“windows nt privileges”
  第三个参数用来接收所返回的制定特权名称的信息。
  函数调用成功后,信息存入第三个类型为LUID的结构体中,并且函数返回非0。
  函数定义在winbase.h中,链接使用advapi32.lib库。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
设置关机和重启
直接把代码复制只修改
在这里插入图片描述
在这里插入图片描述
即可。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值