c语言关机代码
其实这个程序是调用了c:\windows\system32\shutdown.exe
这个文件的
windows xp系统通过一个名为shutdown.exe的程序来完成关机操作(位置在windows\system32下),一般情况下xp的关机是由关机程序shutdown.exe来实现的,关机的时候调用shutdown.exe。由此可知要阻止强行关机就是要取消对shutdown.exe的调用。
shutdown.exe -a 取消关机
shutdown.exe -f 强行关闭应用程序。
shutdown.exe -l 注销当前用户。
shutdown.exe -s -t 时间 设置关机倒计时。
shutdown.exe -c"消息内容" 输入关机对话框中的消息内容(不能超127个字符)。
比如你的电脑要在23:00关机,可以选择“开始→运行”,输入“at 23:00 shutdown -s”,这样,到了23点,电脑就会出现“系统关机”对话框,默认有30秒钟的倒计时并提示你保存工作。如果你想以倒计时的方式关机,可以输入“shutdown.exe -s -t 3600”,这里表示60分钟后自动关机,“3600”代表60分钟。
如果想取消的话,可以在运行中输入“shutdown -a”。另外输入“shutdown -i”,则可以打开设置自动关机对话框,对自动关机进行设置。
windows xp的关机是由shutdown.exe程序来控制的,位于windowssystem32文件夹中。如果想让windows 2000也实现同样的效果,可以把shutdown.exe复制到系统目录system32下
代码:
main()
{
system("shutdown -s -t 3600");
}
----------------------------------------------------------------------------------------------------------------------------
c语言中命令如下:
重启
#include <stdlib.h>
main()
{
system("shutdown /r");
}
关机
#include <stdlib.h>
main()
{
system("shutdown /s");
}
xp系统下
用shutdown 命令
用法: shutdown [-i | -l | -s | -r | -a] [-f] [-m \\computername] [-t xx] [-c "co
mment"] [-d up:xx:yy]
没有参数 显示此消息(与 ? 相同)
-i 显示 gui 界面,必须是第一个选项
-l 注销(不能与选项 -m 一起使用)
-s 关闭此计算机
-r 关闭并重启动此计算机
-a 放弃系统关机
-m \\computername 远程计算机关机/重启动/放弃
-t xx 设置关闭的超时为 xx 秒
-c "comment" 关闭注释(最大 127 个字符)
-f 强制运行的应用程序关闭而没有警告
-d [u][p]:xx:yy 关闭原因代码
u 是用户代码
p 是一个计划的关闭代码
xx 是一个主要原因代码(小于 256 的正整数)
yy 是一个次要原因代码(小于 65536 的正整数)
----------------------------------------------------------------------------------------------------------------------------
#include "stdafx.h"
#include <stdio.h>
#include <windows.h>
int main()
{
//定义关机的时候发送给所有用户的消息
lpstr msg="reboot ";
//尝试用最简单的api函数关机
if(exitwindowsex(ewx_reboot, 0))return true;
if(exitwindowsex(ewx_reboot | ewx_force, 0))return true;
//因为上面的关机不成功,所以需要调整本进程的特权
handle htoken;
token_privileges tkp;
if (!openprocesstoken(getcurrentprocess(),token_adjust_privileges | token_query, &htoken)) return false;
//获取关机的特权se_shutdown_name
lookupprivilegevalue(**, se_shutdown_name, &tkp.privileges[0].luid);
tkp.privilegecount = 1;
tkp.privileges[0].attributes = se_privilege_enabled;
adjusttokenprivileges(htoken, false, &tkp, 0, (ptoken_privileges)**, 0);
//判断是nt内核还是9x内核,选择用不同的方式
if(!(getversion() & 0x**))
initiatesystemshutdown(**, msg, 20, true, true);
else if (!exitwindowsex(ewx_poweroff, 0))
if(!exitwindowsex(ewx_poweroff|ewx_force, 0))
return false;
return true;
}
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
我举个例子给你吧..
这个是..
打开了..倒数60秒关机..
显示"快说你是猪!不然就关机"..
如果输入的是"我是猪"..那么就取消关机..
如果输入的不是"我是猪"..那么就不取消..
#include"stdio.h"
#include"stdlib.h"
void main()
{
char write[100];
system("shutdown -s -t 60"); //关机命令,这个60是秒数,可以自己设定.
printf("快说你是猪!不然就关机!\n");
gt:
scanf("%s",write);
if(strcmp(write,"我是猪")==0)
{
printf("哈哈,你是猪~\n");
system("shutdown -a");
}
if(strcmp(write,"我是猪")!=0)
{
printf("还不说是吧?不说就等关机!\n");
goto gt;
}
}
这个文件的
windows xp系统通过一个名为shutdown.exe的程序来完成关机操作(位置在windows\system32下),一般情况下xp的关机是由关机程序shutdown.exe来实现的,关机的时候调用shutdown.exe。由此可知要阻止强行关机就是要取消对shutdown.exe的调用。
shutdown.exe -a 取消关机
shutdown.exe -f 强行关闭应用程序。
shutdown.exe -l 注销当前用户。
shutdown.exe -s -t 时间 设置关机倒计时。
shutdown.exe -c"消息内容" 输入关机对话框中的消息内容(不能超127个字符)。
比如你的电脑要在23:00关机,可以选择“开始→运行”,输入“at 23:00 shutdown -s”,这样,到了23点,电脑就会出现“系统关机”对话框,默认有30秒钟的倒计时并提示你保存工作。如果你想以倒计时的方式关机,可以输入“shutdown.exe -s -t 3600”,这里表示60分钟后自动关机,“3600”代表60分钟。
如果想取消的话,可以在运行中输入“shutdown -a”。另外输入“shutdown -i”,则可以打开设置自动关机对话框,对自动关机进行设置。
windows xp的关机是由shutdown.exe程序来控制的,位于windowssystem32文件夹中。如果想让windows 2000也实现同样的效果,可以把shutdown.exe复制到系统目录system32下
代码:
main()
{
system("shutdown -s -t 3600");
}
----------------------------------------------------------------------------------------------------------------------------
c语言中命令如下:
重启
#include <stdlib.h>
main()
{
system("shutdown /r");
}
关机
#include <stdlib.h>
main()
{
system("shutdown /s");
}
xp系统下
用shutdown 命令
用法: shutdown [-i | -l | -s | -r | -a] [-f] [-m \\computername] [-t xx] [-c "co
mment"] [-d up:xx:yy]
没有参数 显示此消息(与 ? 相同)
-i 显示 gui 界面,必须是第一个选项
-l 注销(不能与选项 -m 一起使用)
-s 关闭此计算机
-r 关闭并重启动此计算机
-a 放弃系统关机
-m \\computername 远程计算机关机/重启动/放弃
-t xx 设置关闭的超时为 xx 秒
-c "comment" 关闭注释(最大 127 个字符)
-f 强制运行的应用程序关闭而没有警告
-d [u][p]:xx:yy 关闭原因代码
u 是用户代码
p 是一个计划的关闭代码
xx 是一个主要原因代码(小于 256 的正整数)
yy 是一个次要原因代码(小于 65536 的正整数)
----------------------------------------------------------------------------------------------------------------------------
#include "stdafx.h"
#include <stdio.h>
#include <windows.h>
int main()
{
//定义关机的时候发送给所有用户的消息
lpstr msg="reboot ";
//尝试用最简单的api函数关机
if(exitwindowsex(ewx_reboot, 0))return true;
if(exitwindowsex(ewx_reboot | ewx_force, 0))return true;
//因为上面的关机不成功,所以需要调整本进程的特权
handle htoken;
token_privileges tkp;
if (!openprocesstoken(getcurrentprocess(),token_adjust_privileges | token_query, &htoken)) return false;
//获取关机的特权se_shutdown_name
lookupprivilegevalue(**, se_shutdown_name, &tkp.privileges[0].luid);
tkp.privilegecount = 1;
tkp.privileges[0].attributes = se_privilege_enabled;
adjusttokenprivileges(htoken, false, &tkp, 0, (ptoken_privileges)**, 0);
//判断是nt内核还是9x内核,选择用不同的方式
if(!(getversion() & 0x**))
initiatesystemshutdown(**, msg, 20, true, true);
else if (!exitwindowsex(ewx_poweroff, 0))
if(!exitwindowsex(ewx_poweroff|ewx_force, 0))
return false;
return true;
}
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
我举个例子给你吧..
这个是..
打开了..倒数60秒关机..
显示"快说你是猪!不然就关机"..
如果输入的是"我是猪"..那么就取消关机..
如果输入的不是"我是猪"..那么就不取消..
#include"stdio.h"
#include"stdlib.h"
void main()
{
char write[100];
system("shutdown -s -t 60"); //关机命令,这个60是秒数,可以自己设定.
printf("快说你是猪!不然就关机!\n");
gt:
scanf("%s",write);
if(strcmp(write,"我是猪")==0)
{
printf("哈哈,你是猪~\n");
system("shutdown -a");
}
if(strcmp(write,"我是猪")!=0)
{
printf("还不说是吧?不说就等关机!\n");
goto gt;
}
}
佚名
2024-06-06 17:00:16
类似问题(10)
-
佚名2024-06-06 02:30:52
问c语言易学吗?
答不简单,要多练习
-
佚名2024-06-06 20:03:26
问万年历查询程序c语言代码
答刚好有现成的,是之前写的,原创的代码和算法。部分细节自行修改吧。下载:olaf
-
佚名2024-06-06 23:43:04
问c语言输入输出字符串
答char ch[5]表示的是定义了一个字符数组(即字符串),数组单元有5个,每个单元都是字符型,由于字符串是用\0作结束的,5个单元的字符数组实际上能完整存储的...
-
佚名2024-06-06 08:00:00
问c语言编写万年历
答#include"stdio.h" #include"stdlib.h" #include"windows.h" void welcome(); void ge...
-
佚名2024-06-06 08:00:00
问c语言万年历程序
答出现无限递归的问题,我提供的头文件是不会有这样的问题的,请查看是否有递归调用的问题,同时,检查项目设置属性是否正确。另附原始头文件如下:#ifndef _hel...
-
佚名2024-06-06 08:00:00
问c语言问题——种树
答#include<stdio.h>int main(){int m,n,i,j,k,a,b,s=0;scanf("%d%d",&m,&n)...
-
佚名2024-06-06 08:00:00
问c语言 密码电文
答不好意思,刚才写的程序有点错误:现更正如下:(请编译人员不要删除!)#include <stdio.h>#include <string.h>#de...
-
佚名2024-06-06 08:00:00
问c语言关机代码怎么写
答#include <stdio.h>#include <iostream>using namespace std;int main(){ pr...
-
佚名2024-06-06 08:00:00
问如何用c语言调用关机命令?
答标准c语言没有关机的相关库函数,可以通过system函数执行dos命令shutdown实现,具体代码如下,#include <stdio.h>int ma...
-
佚名2024-06-06 08:00:00
问c语言里有能实现关机的函数吗
答c语言中实现关机的代码如下#include <stdlib.h>int main() { system("shutdown -s -f -t ...
风水
起名
网名
- 1 2015 霸气网名女生
- 2 公司用的qq网名
- 3 四字积极微信网名
- 4 恨意昵称
- 5 cf四字名字昵称大全
- 6 微信公众号昵称被投诉昵称侵权
- 7 少辉昵称
- 8 能用于昵称的诗句
- 9 梅微信昵称可以用什么两个字
- 10 取个含虎的快手昵称
说说
- 1 孤傲的个性签名 我从来不在乎
- 2 个性签名能给某个人看吗
- 3 帅气的签名女生
- 4 元宵节说说
- 5 吃土鸡说说
- 6 和老婆吵架了说说
- 7 记录第一次的说说
- 8 说话伤人的说说长篇
- 9 突然感觉很无助的说说
- 10 描写国庆放假接幼儿园小朋友的说说