如何在Windows Forms App (.NET Framework)中用C#实现电脑关机功能
实现游戏通关后自动关闭电脑的恶作剧方案
Windows 系统实现
- 核心是调用系统关机命令:游戏触发通关逻辑时,执行命令
shutdown /s /t 0。其中/s指定关机操作,/t 0表示立即执行。 - 主流引擎调用示例:
- Unity(C#):
using System.Diagnostics; // 在通关触发函数中添加 Process.Start("shutdown", "/s /t 0"); - Unreal Engine(C++):
#include "Misc/Paths.h" #include "Misc/PlatformProcess.h" // 在通关触发逻辑里调用 FPlatformProcess::CreateProc(TEXT("shutdown.exe"), TEXT("/s /t 0"), false, false, false, nullptr, 0, nullptr, nullptr);
- Unity(C#):
Linux/macOS 系统实现
- 系统关机命令用
shutdown -h now或poweroff,二者效果一致。 - 主流引擎调用示例:
- Unity(C#):
using System.Diagnostics; // 通关触发时执行 Process.Start("shutdown", "-h now"); - Unreal Engine(C++):
#include "Misc/PlatformProcess.h" // 通关逻辑中添加 FPlatformProcess::CreateProc(TEXT("shutdown"), TEXT("-h now"), false, false, false, nullptr, 0, nullptr, nullptr);
- Unity(C#):
关键注意事项
- 务必提前跟朋友说明这是恶作剧,防止对方未保存的重要数据丢失,引发不必要的矛盾。
- 测试阶段建议用延迟关机命令,方便中途取消:Windows用
shutdown /s /t 60(60秒后关机),取消命令是shutdown /a;Linux/macOS用shutdown -h +1,取消命令是shutdown -c。
内容的提问来源于stack exchange,提问作者Tomaatje07
相关产品推荐
相关产品推荐

