这个网上搜一下很多的,将C语言关机代码改为相应的重启命令就可以,相关命令如下:
shutdown.exe -a 取消关机
shutdown.exe -f 强行关闭应用程序。
shutdown.exe -m \计算机名 控制远程计算机。
shutdown.exe -i 显示图形用户界面,但必须是Shutdown的第一个参数。
shutdown.exe -l 注销当前用户。
shutdown.exe -r 关机并重启。
shutdown.exe -t时间 设置关机倒计时。
shutdown.exe -c"消息内容" 输入关机对话框中的消息内容(不能超127个字符)。
需要说明的是,如果想用程序实现定时开机,那么一般是做不到的。因为很多机器的主板不支持定时重启功能,但是随着主板的升级换代,很大一部分新型号的主板还是支持的。这时候就需要进入BIOS(百度查一下),手动设置开机时间。
#include
void main()
{
HANDLE hToken;
TOKEN_PRIVILEGES tkp;
if (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_REBOOT,0);
}
}