求一个C语言定时关机程序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求一个C语言定时关机程序相关的知识,希望对你有一定的参考价值。
简单
提示
不是外部命令?
22:00
Shutdown
-s”,这样,到了22点电脑就会出现“系统关机”对话框,默认有30秒钟的倒计时并提示你保存工作。如果你想以倒计时的方式关机,可以输入“Shutdown.exe
-s
-t
3600”,这里表示60分钟后自动关机,“3600”代表60分钟。
设置好自动关机后,如果想取消的话,可以在运行中输入“shutdown
-a”。另外输入“shutdown
-i”,则可以打开设置自动关机对话框,对自动关机进行设置。
Shutdown.exe的参数,每个都具有特定的用途,执行每一个都会产生不同的效果,比如“-s”就表示关闭本地计算机,“-a”表示取消关机操作,下面列出了更多参数,大家可以在Shutdown.exe中按需使用。
-f:强行关闭应用程序
-m
\\计算机名:控制远程计算机
-i:显示图形用户界面,但必须是Shutdown的第一个选项
-l:注销当前用户
-r:关机并重启
-t
时间:设置关机倒计时
-c
"消息内容":输入关机对话框中的消息内容(不能超127个字符)
有时候,我们需要定时关闭计算机,下面介绍一个在Windows
XP下实现定时关机的简单方法。
指定系统在22分钟后自动关闭:点击“开始→运行”,在“打开”中输入命令“Shutdown
-s
-t
1320”(注意:引号不输入,参数之间有空格,1320的单位是秒),单击“确定”按钮即可。
指定系统在某个时间(比如12:00)自动关闭:在“打开”中输入命令“at
12:00
Shutdown
-s”即可。
取消定时关机:在“打开”中输入命令“Shutdown
-a”即可。
能的实现都是使用“Shutdown”命令实现的,shutdown的参数是在命令行窗口中输入“shutdown”。笔者认为最有用的是“-i”参数,可以调出“远程关机对话框”,能方便地实现局域网内计算机的远程关机,有兴趣的朋友可以试一试。
开始-程序-附件-系统工具-计划任务-添加任务计划-下一步-浏览“c:\windows\system32\shadow.exe”下一步-选好要关机的时间,下一步-输入用户名和密码,只要是系统里有的用户就行,但一定要有密码,没有也要设一个,下一步,选上“在完成时打开此任务的高级属性”,在运行栏后面加上“
-S”引号不要哦。
1、win2000系统内没有shutdown命令文件,如果在2000中使用,必须
copy
winXP中的shutdown.exe文件(在xp的c盘收索就能找到),到win2k的C:\\WINNT中,win2k才能使用。\\.s
2、实现每日定时关机从新启动,设置好定时关机命令后,在控制面板中的任务计划中添加一个计划,在运行中输入“C:\\WINNT\\shutdown.exe
-r”在设置密码处输入管理员的密码,在日程处输入每天运行的时间,那样就可以达到每天定时重新启动计算机了。 参考技术A #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;
参考技术B #include<stdio.h>
#include<string.h>
#include<stdlib.h>
int print()
printf(" ╪╪╪╪╪╪╧╧╧╧╧╧╧╧╪╪╪╪╪╪\n");
printf("╔═══╧╧ C语言 关机程序 ╧╧═══╗\n");
printf("║※1.实现10分钟内的定时关闭计算机 ║\n");
printf("║※2.立即关闭计算机 ║\n");
printf("║※3.注销计算机 ║\n");
printf("║※0.退出系统 ║\n");
printf("╚═══════════════════╝\n");
return 0;
void main()
system("title C语言关机程序");//设置cmd窗口标题
system("mode con cols=48 lines=25");//窗口宽度高度
system("color 0"); //可以写成 red 调出颜色组
system("date /T");
system("TIME /T");
char cmd[20]="shutdown -s -t ";
char t[5]="0";
print();
int c;
scanf("%d",&c);
getchar();
switch(c)
case 1:printf("您想在多少秒后自动关闭计算机?(0~600)\n");scanf("%s",t);system(strcat(cmd,t));break;
case 2:system("shutdown -p");break;
case 3:system("shutdown -l");break;
case 0:break;
default:printf("Error!\n");
system("pause");
exit(0);//exit(1)表示异常退出.这个1是返回给操作系统的不过在DOS好像不需要这个返回值
// exit(0)表示正常退出
本回答被提问者采纳
单片机C语言定时器如何调用
我现在定时器的初始程序与中断,假设我现在需要将机器从开机开始计时,到三十秒做第一个动作,该如何调用,求大神知道
程序如下
/*******************************************************************
【函数原形 】: init_time
【功能说明 】: 定时器初始化程序
【参数说明 】:
【编写时间 】: 2012年12月10日
【修改时间 】:
【初始位置 】:
************************************************************************/
void init_time()
TMOD=0x01;
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
EA=1;
ET0=1;
TR0=1;
void time_0()interrupt 1
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
coint++;
单片机中通过中断的方式来调用定时器。
具体的调用方式可以参考通过如下程序:
程序功能:利用定时器进行定时,实现每秒中led闪烁一次
#include<reg52.h>sbit led = P0^0;
unsigned int num;
void main(void)
TMOD = 0x00; // 工作方式0
TH0 = (8192 - 5000) / 32; // 12M晶振下定时5ms
TL0 = (8192 - 5000) % 32;
EA = 1; // 开总中断
ET0 = 1; // 开定时器中断
TR0 = 1; // 启动定时器
while(1)
if(num == 200) // 定时1秒钟到
num = 0; // 计数器清零
led = ~led; // led灯取反,实现1秒闪烁一次
void timer() interrupt 1 // 定时器1工作与方式0
TH0 = (8192 - 5000) / 32; // 重装初值
TL0 = (8192 - 5000) % 32;
num++; // 计数器加1
参考技术A count++到30秒触发一个函数就行了 参考技术B void init_time()
TMOD=0x01;
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
EA=1;
ET0=1;
TR0=1;
void main()
init_time();
while(1);
void time_0()interrupt 1 //中断函数放主函数后面就行,不需要声明
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;//假设这个定时为10毫秒,我就不计算了
coint++; //全局变量,别忘了定义
if(coint==3000)//10ms*3000=30s
LED=~LED;//这是要执行的动作,以灯亮灭为例;
coint=0;计数器清零,重新开始计数;
追问
你好请问,我程序如果后面还要有别的动作,如何做成全局定时
追答这个本身就是全局定时反复执行的,每隔三十秒就执行一次。要是想在中断后进行别的动作,可以把动作程序写在主程序while(1)的位置,比如在while(1)里面写个流水灯的程序,现象就是流水灯一直流动,每隔三十秒中断中控制的那个灯亮灭变化一次,两者互不影响。建议你深入理解一下中断的概念http://zhidao.baidu.com/question/2195108.html
本回答被提问者采纳以上是关于求一个C语言定时关机程序的主要内容,如果未能解决你的问题,请参考以下文章