关机恶搞小程序

1. system("shutdown")的介绍

system函数的参数是"shutdown"时,它将会执行系统的关机命令。

具体来说,system("shutdown")的功能是向操作系统发送一个关机信号,请求关闭计算机。这将触发操作系统执行一系列的关机操作,包括关闭所有正在运行的程序、保存必要的系统信息、并最终关闭计算机的电源。

需要注意的是,执行system("shutdown")通常需要管理员权限,因为关机操作涉及到系统级别的资源管理。在不同的操作系统上,关机命令可能会有所不同,因此具体的实现细节可能会有所差异。

总结来说,system("shutdown")是一个用于触发计算机关机操作的命令,通过调用外部的关机命令来实现这一功能。

通过改变system("shutdown")中的参数则可以产生不同的关机信号,接下来我将详细讲解几个实用有趣关机命令。

2. 关机命令

2.1 强行关闭正在运行的应用

执行这个效果需要用到参数 /f

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /f");
	return 0;
}

这个被代码执行后会直接关闭我们计算机所有正在运行的应用,并进入到锁屏界面。

2.2 重启并保留原来的程序

执行这个效果需要用到参数 /g

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /g");
	return 0;
}

这个被代码执行后会直接重新启动计算机,重启完后将会打开执行这个代码前正在运行的应用。

2.3 关机并保留原来的程序

执行这个效果需要用到参数 /sg

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /sg");
	return 0;
}

这个被代码执行后会在30s后关闭计算机,当我们再次重启计算机时它会将会打开执行这个代码前正在运行的应用。

2.4 关机并准备快速启动

执行这个效果需要用到参数 /hybrid和/s

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /hybrid /s");
	return 0;
}

这个被代码执行后会关闭计算机,并在关机过程中将系统状态保存到硬盘上,以实现快速启动。

2.5 关机没有超时或警告

执行这个效果需要用到参数/p

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /p");
	return 0;
}

这个被代码执行后就跟平常的关机一样。

2.6 关机有超时或警告

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /s");
	return 0;
}

这个被代码执行后会提醒你多久后会关机,一般是默认30s后关机,要想修改这个时间关机,我们还可以在后面再加上参数/t xxx 将关闭前的超时时间设置为 xxx 秒。有效范围是 0-315360000 (10 年)。

2.7 终止关机

执行这个效果需要用到参数/a

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /a");
	return 0;
}

这个被代码执行后会取消我们的关机或重启的命令,前提是这个关机或重启是有等待时间的。

2.8 立即关机

执行这个效果需要用到参数/f和/p

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /f /s");
	return 0;
}

这个被代码执行后会立即关机正在运行的应用,然后关机,从而达到立即关机的目的。

2.9 注销

执行这个效果需要用到参数/l

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /l");
	return 0;
}

这个被代码执行后会关闭应用,然后回到锁屏界面,这个与强行关闭正在运行的应用的区别是,这个是慢慢的关闭应用的,而强行关闭正在运行的应用是直接关闭应用的。

2.10 休眠

执行这个效果需要用到参数/h

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /h");
	return 0;
}

这个被代码执行后会使计算机进入一个休眠的状态,这个与平常休眠不同的是,你动键盘和鼠标时,它不会关闭休眠状态,需要你按开启键才能关闭休眠状态。

2.11 注释重启或关闭的原因

执行这个效果需要用到参数/c "comment"(comment是你要输入的文字,最多允许输入512个字符)

cpp 复制代码
#include<stdlib.h>
#include<stdio.h>
int main()
{
	system("shutdown /s /c "comment"");
	return 0;
}

3. 制作恶搞小程序

将上面的程序写好后我们可以找到程序的文件目录。将其发给你的好友,或者将其包装一下。

改为release的环境

找到程序的所在文件位置:


然后将其复制到桌面上来,直接发给好友。

或者将程序复制到桌面后右键点击它,然后点击创建快捷方式,然后右键点击我们创建的快捷方式,点开属性,点击快捷方式,点击更换图标,然后按照同样的方式点开其他软件的更换图标,复制如下图的东西,然后粘贴到我们的程序图标那里,点击确定就可以将我们程序的图标改为,我们复制的应用图标了。最后把名字改了,我们就制作好了一个谁也认不出来的恶搞软件了。

上面这两个都是我写的关机程序,一点开就会直接关机。

相关推荐
m0_570466413 分钟前
代码随想录算法训练营第二十八天 | 买卖股票的最佳实际、跳跃游戏、K次取反后最大化的数组和
java·开发语言·算法
程序喵大人4 分钟前
分享个C++线程池的实现源码
开发语言·c++·线程池
不会吃萝卜的兔子29 分钟前
go webrtc - 1 go基本概念
开发语言·golang·webrtc
JuneXcy1 小时前
结构体简介
c语言·数据结构·算法
要做朋鱼燕1 小时前
【C++】 priority_queue 容器模拟实现解析
开发语言·c++·笔记·职场和发展
jiaway1 小时前
【C语言】第四课 指针与内存管理
c语言·开发语言·算法
励志不掉头发的内向程序员1 小时前
C++进阶——继承 (1)
开发语言·c++·学习
黑客思维者3 小时前
《我是如何用C语言写工控系统的漏洞和Bug》连载(1)内容大纲
c语言·bug·工控漏洞
中国胖子风清扬3 小时前
Rust 序列化技术全解析:从基础到实战
开发语言·c++·spring boot·vscode·后端·中间件·rust
我就是全世界3 小时前
【存储选型终极指南】RustFS vs MinIO:5大维度深度对决,95%技术团队的选择秘密!
开发语言·分布式·rust·存储