在WIN2000以上执行关机、注销、重启代码需要调整权限:
//调整权限调用API关机函数
HANDLE hToken;
TOKEN_PRIVILEGES tkp;
OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken);
LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid);
tkp.PrivilegeCount = 1;
// 设置一个权限
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken, FALSE, &tkp, 0,(PTOKEN_PRIVILEGES)NULL, 0);
ExitWindowsEx(EWX_SHUTDOWN | EWX_FORCE, 0);
//关机
ExitWindowsEx(EWX_LOGOFF,0);
//注销
ExitWindowsEx(EWX_FORCE | EWX_REBOOT,0);
//重启
最后
以上就是简单皮皮虾最近收集整理的关于C++关机、注销及重启的全部内容,更多相关C++关机、注销及重启内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复