永发信息网

要求一个c++关机的函数

答案:2  悬赏:30  手机版
解决时间 2021-07-25 09:59
已经知道现在时间(如12:18:36)和要关机的时间(如24:12:39),求一可以实现关机的c++程序
最佳答案

在windows2000或者以上的系统中,出于安全的考虑,许多函数需要特定的权限才能够执行的


HANDLE htoken
TOKEN_PRIVILEGES tkp;


OSVERSIONINFO osvi;
osvi.dwSVersionInfoSize=sizeof(OSVERSIONINFO);
if (GetVersionEx(&osvi)==0)
return false;
if (osvi.dwPlatformID==VER_PLATFORM_WIN32_NT)
{
if (!openprocessToken(Getcurrentprocess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&htoken))
return false;
LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&tkp.Privileges[0].luid);
tkp.PrivilegeCount=1;
tkp.Privileges(htoken,FALSE,&tkp,0,(Proken_privileges),0);


}
ExitWindowsEx(EWX_FORCE,0)


关机函数,就是最后的那个函数

全部回答

//关机 HANDLE hToken; if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken)) { AfxMessageBox(_T("OpenProcessToken Error.")); }

TOKEN_PRIVILEGES tkp; 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); if (GetLastError() != ERROR_SUCCESS) { AfxMessageBox(_T("AdjustTokenPrivileges Error.")); }

if (!ExitWindowsEx(EWX_SHUTDOWN, 0)) { AfxMessageBox(_T("ExitWindowsEx Error.")); }

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
.中医的肾开窍于
dnf怎么样 可以一天升5级
模拟人生3怎么玩?
中国代太监是怎么样说啊
全鹿丸一般吃多久起效?
河北省石家庄市地区高中还分文理科吗??
我没有开通会员.QQ上显示QQ会员加速中.头像也
要想怀孕提前三个做什么准备
如果三部都有的话,我都想要啊,越全越好.
没有登网址之类查个人档案查的吗?
1M和2M的宽带下载东西的速度有多快
关于产后的问题
玫瑰园打不开出现错误信息
普耳茶算绿茶吗
谁送个QQ丝路英雄蓝钻的CD-KEY 我用会员CD-KE
推荐资讯
大学生参加社团申请书,加入学校社团的申请书
简易干洗怎能洗的
我爱的人他不爱我,我该怎么办阿!是加油还是
跟鸡有关的名言警句,莲字开头的诗句有哪些?
汽车发动机暖风水箱是怎么回事啊?工作原理是
佛山汽车站到佛山中医院怎么做公车
高山中学(就是高山五中)
广州三角牌电饭煲在哪里批发
古时候生物是怎样来的
长安面包车保养需要注意什么问题
怎么样可以解绑 密保手机号
为什么电脑每次开机都会检查一遍?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?