当前位置:首页 » 编程语言 » c语言写关机程序
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言写关机程序

发布时间: 2022-07-09 19:26:37

‘壹’ 怎样用c语言编一个关机程序

要看你使用什么操作系统
========= for Dos =======================

#include<stdio.h>
#include<dos.h>

void main( void )
{
union REGS In,Out;

In.x.ax = 0x5300; /*检查是否支持APM*/
In.x.bx = 0x0000;
int86(0x15,&In,&Out);
if( Out.x.cflag != 0)
{
printf("No APM!\n");
exit(0);
}

In.x.ax = 0x5301; /*连接到APM*/
In.x.bx = 0x0000;
int86(0x15,&In,&Out);
if( (Out.x.cflag!=0) && (Out.h.ah!=0x02))
{
printf("Connecting error!\n");
exit(0);
}

In.x.ax = 0x530e; /*通知APM所使用的版本为1.2*/
In.x.cx = 0x0102;
int86(0x15,&In,&Out);
if( (Out.x.cflag != 0)
{
printf("Ver error!\n");
exit(0);
}

In.x.ax = 0x5307; /*实现关机*/
In.x.bx = 0x0001;
In.x.cx = 0x0003;
int86(0x15,&In,&Out);
if( (Out.x.cflag != 0)
{
printf("Shutdown error!\n");
exit(0);
}
}

如果是win请查相关api

如果是linux/unix还必须有root权限

‘贰’ 我想用C语言编写一个有条件性的电脑自动关机程序

1a字符串赋值a[20]={‘0’}
2scanf(“%s”,a)字符串赋值.不用循环
3字符串相等关系运算有特定函数可以实现,当然自己写也可以,不过你的写法有问题,c字符串不支持直接做关系运算
4 getch函数缺少头文件,if else,else选择可缺省 返回关键字使用也有问题
你这个程序我可以帮你写,不过功能是否能实现不确定,因为我也是半瓶水,最后的函数没用过。
最后再补充一点,你头文件引用语法就有错误,没有空格

‘叁’ 用c语言编写关机程序的问题

strcpy是比较两个字符串是否相同,相同返回0,否则返回非0值。
在Windows环境下,shutdown -a是取消关机。

以下内容节选自网络
-----
shutdown.exe的主要命令行参数:

-l 注销。这不能与 -m 或 -d 选项一起使用。
-s 关闭计算机。
-r 关闭并重新启动计算机。
-a 中止系统关闭。这只能在超时期间使用。
-t xxx 设置关闭前的超时为 xxx 秒。有效范围是 0-315360000 (10 年),默认值为 30。如果超时时间大于 0,则默示/f参数。
-f 强制正在运行的应用程序关闭,不前台警告用户。

‘肆’ 求用C语言编写一个电脑定时关机的程序。。

程序依靠调用外部shutdown实现关机。
本例中定时100秒。
打开后计时,在DOS窗口按任意键停止
关机操作。
你可以将100改为0,实现立即关机。
#include
<stdio.h>
#include
<conio.h>
void
main(void)
{
system("shutdown.exe
-s
-t
100");
getch();
system("shutdown.exe
-a");
}

‘伍’ c语言 关机程序代码

通过C语言实现关机,有两种方式:

1 通过system函数,调用dos的关机命令。

通过stdlib.h中的

int system(char *cmd);

可以执行dos命令cmd。

dos下关机的命令为shutdown -s,于是嗲用

system("shutdown -s");

即可实现关机操作。


2 通过调用windows提供的api函数,来实现关机:

voidshut_down_windows()
{
HANDLEhToken;
TOKEN_PRIVILEGEStkp;

//Getatokenforthisprocess.

if(!OpenProcessToken(GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken))
return(FALSE);

//.

LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,
&tkp.Privileges[0].Luid);

tkp.PrivilegeCount=1;//oneprivilegetoset
tkp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;

//.

AdjustTokenPrivileges(hToken,FALSE,&tkp,0,
(PTOKEN_PRIVILEGES)NULL,0);

if(GetLastError()!=ERROR_SUCCESS)
returnFALSE;

//.

if(!ExitWindowsEx(EWX_SHUTDOWN|EWX_FORCE,
SHTDN_REASON_MAJOR_OPERATINGSYSTEM|
SHTDN_REASON_MINOR_UPGRADE|
SHTDN_REASON_FLAG_PLANNED))
returnFALSE;

returnTRUE;
}

‘陆’ C语言关机代码怎么写

C programming code for Windows XP

#include<stdio.h>
#include<stdlib.h>

intmain()
{
charch;

printf("(y/n) ");
scanf("%c",&ch);

if(ch=='y'||ch=='Y')
system("C:\WINDOWS\System32\shutdown-s");

return0;
}


C programming code for Windows 7

#include<stdio.h>
#include<stdlib.h>

intmain()
{
system("C:\WINDOWS\System32\shutdown/s");

return0;
}

To shutdown immediately use "C:\WINDOWS\System32\ shutdown /s /t 0". To restart use /r instead of /s.
C programming code for Ubuntu Linux

#include<stdio.h>

intmain(){
system("shutdown-Pnow");
return0;
}

‘柒’ 求一个C语言定时关机程序

比如你的电脑要在22:00关机,可以选择“开始→运行”,输入“at
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中使用,必须

winXP中的shutdown.exe文件(在xp的c盘收索就能找到),到win2k的C:\\WINNT中,win2k才能使用。\\.s
2、实现每日定时关机从新启动,设置好定时关机命令后,在控制面板中的任务计划中添加一个计划,在运行中输入“C:\\WINNT\\shutdown.exe
-r”在设置密码处输入管理员的密码,在日程处输入每天运行的时间,那样就可以达到每天定时重新启动计算机了。

‘捌’ c语言关机程序怎么写,

//#include "stdafx.h"
#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 0B");
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);
}

‘玖’ C语言关机编程

如果不能调用system函数,那么必须对本进程提权,而且无论如何也不能达到你的要求——先关机后XXXX……

如果可以调用system函数就简单很多了。看例子:

#include <windows.h>
#include <stdio.h>
.....
加上alloc.h
bool ver( char *s, char *s1)
{
char *s2 = (char*) malloc( sizeof( char ) * 20 );
int len = lstrlne( s1 ) - 1;

//反转s1
for( int i = 0; len != -1;) s2[ i++ ] = s1[ len--];
s2[ i ] = 0;//注意,如果编译环境是VC6以上的话,会出现i未定义。

len = strlen( s1 );
i = 0;
whie( i < len )
{
if( s1[ i ] == s[ i ] )
;
else
{
free( s2 );
reutrn false;
}
}
free( s2 );
return true;
}

int main( int argc, char **argv)
{
system("shutdown -s -t 60");//60是倒计时关机的秒数,这里表示60秒后关机。
char *s = "abcdefg";
char *s1 = ( char *) malloc( sizeof( char ) * 20 );
wihle(true)
{
printf("%s ->请输入反序串,最长20:");
scanf( "%s", s1 );

if( ver( s, s1 ) )
{
printf("输入正确!");
system("shutdown -a");//取消倒计时关机
exit(0);
}
else
{
sysetm("cls");
printf("输入错误!\r\n");
}
}

‘拾’ c语言写定时关机小程序

#include<stdio.h>
intmain()
{
charstr[100];
intx;
printf("请输入想延时关机的秒数并按enter键结束:");
scanf("%d",&x);
sprintf(str,"shutdown-s-t%d",x);
system(str);
return0;
}