简介

本文讲述了用 C# 代码如何实现让你的电脑关机,重启,注销,锁定,休眠,睡眠。

如何实现

首先,使用 using 语句添加我们需要的命名空间:

using System.Diagnostics;
using System.Runtime.InteropServices;

关机

代码如下:

Process.Start("shutdown","/s /t 0");    // 参数 /s 的意思是要关闭计算机
                                        // 参数 /t 0 的意思是告诉计算机 0 秒之后执行命令

重启

代码如下:

Process.Start("shutdown""/r /t 0"); // 参数 /r 的意思是要重新启动计算机

注销

需要使用 DllImport 的方式在你的类里声明一个 Windows API 函数:

[DllImport("user32")]
public static extern bool ExitWindowsEx(uint uFlags, uint dwReason);

然后,使用如下代码就可以实现注销:

ExitWindowsEx(0,0);

锁定

和注销一样也需要声明一个函数:

[DllImport("user32")]
public static extern void LockWorkStation();

然后,使用如下代码就可以实现锁定:

LockWorkStation();

休眠和睡眠

同样,还是需要声明一个函数:

[DllImport("PowrProf.dll", CharSet = CharSet.Auto, ExactSpelling = true)]
public static extern bool SetSuspendState(bool hiberate, bool forceCritical, bool disableWakeEvent);

实现休眠,代码如下:

SetSuspendState(truetruetrue);

实现睡眠,代码如下:

SetSuspendState(falsetruetrue);

用 C# 代码如何实现让你的电脑关机,重启,注销,锁定,休眠,睡眠的更多相关文章

  1. windows提权操作以及系统开机关机重启代码(用到了LookupPrivilegeValue和AdjustTokenPrivileges调整进程的Token权限)

    对于UAC提权操作,一般在编译期间,如果程序有需求要提权,会在编译器里设置,vs2010比较简单,在工程属性里可以直接设置,vs2005稍微有点儿麻烦,参考这篇文章: http://www.seany ...

  2. 电脑莫名重启,VS代码丢失的解决办法

    今天写了一天的代码,然后电脑放在公司了,出去看电影(公司组织红色文化培训..)回来发现电脑重启,再打开电脑,VS的代码都不见了.好慌.... 别慌处理办法来了: 打开everything(没有的可以下 ...

  3. TERSUS无代码开发(笔记08)-简单实例电脑端后台逻辑开发

    主管审批功能逻辑开发 1.查询逻辑开发(查询待审批记录) 2.批准处理(将选中的一条记录进行批准处理)  =============================================== ...

  4. TERSUS无代码开发(笔记05)-简单实例电脑端页面设计

    案例笔记电脑端页面设计   1.新建项目(请假管理qjgl)   2.开发软件界面介绍(常用的功能按键)      3.目录中显示元件对象      4.对元件对象的操作主要方式是双击(双击哪个元件, ...

  5. eclipse出现每次修改代码报heap over错误,然后必须重启tomcat问题,修改过程

    首先我在eclipse安装目录下找到eclipse.ini文件 修改了里边的参数 C:/Program Files/Java/jdk1.6.0_39/bin/javaw.exe--launcher.a ...

  6. winform导入导出excel,后台动态添加控件

    思路: 导入: 1,初始化一个OpenFileDialog类 (OpenFileDialog fileDialog = new OpenFileDialog();) 2, 获取用户选择文件的后缀名(s ...

  7. C语言的数据、常量和变量

    一.数据 图片文字等都是数据,在计算机中以0和1存储. (一)分类 数据分为静态数据和动态数据. ①. 静态数据:一些永久性的的数据,一般存储在硬盘中,只要硬盘没坏数据都是存在的.一般以文件的形式存储 ...

  8. 【faster-rcnn】训练自己的数据集时的坑

    既然faster-rcnn原版发表时候是matlab版代码,那就用matlab版代码吧!不过遇到的坑挺多的,不知道python版会不会好一点. ======= update ========= 总体上 ...

  9. LoarRunner11使用异常及解决方案

    1:使用VuGen录制后出现“由于另一个程序正在运行中,此操作无法完成.请选择切换到来激活正在运行中的程序,并更正问题”,点击“切换到”无效果. 解决:在“运行”中输入“msconfig”,选择“启用 ...

随机推荐

  1. 通过调用API在JavaWeb项目中实现证件识别

    本文详细介绍自己如何在JavaWeb项目中通过调用API实现证件识别. 一,Face++使用简介 二,两种方式(图片URL与本地上传)实现证件识别 一,Face++使用简介 Face++旷视人工智能开 ...

  2. App测试基本流程详解

    1 APP测试基本流程 1.1流程图 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间. 1.3测试资 ...

  3. DCGAN: "Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Network" Notes

    - Alec Radford, ICLR2016 原文:https://arxiv.org/abs/1511.06434 论文翻译:https://www.cnblogs.com/lyrichu/p/ ...

  4. Week1 Team Homework #1 from Z.XML-项目选择思路--基于对曾经大作业项目的思考

    这两天试玩了一下去年学长的满分工程<shield star>游戏,再结合了一下他们团队的博客记录,有一种非常牛逼的感觉.具体对于这款游戏的一些思考和看法,毛大神已经说的很好了.因此,这里主 ...

  5. java script 学习

    用JavaScript输出文本 <p>我的第一个段落.</p> <script> document.write(Date()); </script> & ...

  6. lintcode-93-平衡二叉树

    93-平衡二叉树 给定一个二叉树,确定它是高度平衡的.对于这个问题,一棵高度平衡的二叉树的定义是:一棵二叉树中每个节点的两个子树的深度相差不会超过1. 您在真实的面试中是否遇到过这个题? Yes 样例 ...

  7. 我和C语言程序

    姓名:江超鸿 学号:160809129 爱好:打台球.听音乐 博客地址:https://www.cnblogs.com/jiangchaohong/ C语言:对于c语言程序来说,我是第一次接触,对它的 ...

  8. 实现AJAX跨域访问方式一

    1.添加pom依赖 <dependency> <groupId>com.thetransactioncompany</groupId> <artifactId ...

  9. el-input为数字时验证问题

    el-input为数字时,初始有值,怎么还会验证不能为空? html: <el-form-item label="审核数量:" prop="checkNum&quo ...

  10. 【loj6177】「美团 CodeM 初赛 Round B」送外卖2 Floyd+状压dp

    题目描述 一张$n$个点$m$条边的有向图,通过每条边需要消耗时间,初始为$0$时刻,可以在某个点停留.有$q$个任务,每个任务要求在$l_i$或以后时刻到$s_i$接受任务,并在$r_i$或以前时刻 ...