C# 简单的定时关机
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace AutoCloseComputer
{
public partial class Form1 : Form
{
public Form1()
{ InitializeComponent(); //设置默认时间为当前时间
nud_hour.Value = Convert.ToDecimal(DateTime.Now.Hour);
nud_min.Value = Convert.ToDecimal(DateTime.Now.Minute); txt_sencods.Text = ""; //设置默认时间为10*60秒 } /// <summary>
/// 启动定时关机程序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnCloseComputer_Click(object sender, EventArgs e)
{
lab_result.Text = ""; string str = txt_sencods.Text.Trim();
if (string.IsNullOrEmpty(str))
{
lab_result.Text = "时间不能为空";
return;
} int seconds = ;
if (int.TryParse(str, out seconds))
{
OperateComputer("shutdown -s -t " + seconds);
}
else
{
lab_result.Text = "时间格式只能输入数字";
}
} /// <summary>
/// 取消关机命令
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnCancelClose_Click(object sender, EventArgs e)
{
OperateComputer("shutdown -a");
} /// <summary>
/// 操作电脑命令
/// </summary>
/// <param name="command"></param>
private void OperateComputer(string command)
{
var startInfo = new System.Diagnostics.ProcessStartInfo("cmd.exe");
startInfo.UseShellExecute = false;
startInfo.RedirectStandardInput = true;
startInfo.RedirectStandardOutput = true;
startInfo.RedirectStandardError = true;
startInfo.CreateNoWindow = true;
var myProcess = new System.Diagnostics.Process();
myProcess.StartInfo = startInfo;
myProcess.Start();
myProcess.StandardInput.WriteLine(command);
} /// <summary>
/// 指定时间关机
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnTimeClose_Click(object sender, EventArgs e)
{
int hour = Convert.ToInt32(nud_hour.Value);
int min = Convert.ToInt32(nud_min.Value); DateTime closedt = DateTime.Now; //当时间小于当前时认为是第二天的时间
if(hour<DateTime.Now.Hour)
{
string strdt = DateTime.Now.AddDays(1D).ToString("yyyy-MM-dd") + " " + hour.ToString().PadLeft(,'') + ":" + min.ToString().PadLeft(,'');
closedt = Convert.ToDateTime(strdt); }else
{
string strdt = DateTime.Now.ToString("yyyy-MM-dd") + " " + hour.ToString().PadLeft(, '') + ":" + min.ToString().PadLeft(, '');
closedt = Convert.ToDateTime(strdt);
}
//计算出时间差
int total = Convert.ToInt32((closedt - DateTime.Now).TotalSeconds);
OperateComputer("shutdown -s -t " + total); //一下命令没有效果
//string command = "at " + hour + ":" + min + " shutdown -s";
//OperateComputer(command); } }
}

此程序是VS2013编写的。
提供程序的下载链接:https://pan.baidu.com/s/1slpGGsl
C# 简单的定时关机的更多相关文章
- 利用DOS批处理实现定时关机操作
10月1放假回来,寝室晚上10:30就停电了,最无法让人理解的是第二天早上8:00才来电.原来晚上电脑都是不关机的,开着WiFi一直到天亮,可是现在不行了,电脑如果一直开着第二天早上起来电脑肯定没电, ...
- Linux系统Shutdown命令定时关机详解
转自:http://www.bootf.com/490.html Linux系统下的shutdown命令用于安全的关闭/重启计算机,它不仅可以方便的实现定时关机,还可以由用户决定关机时的相关参数.在执 ...
- XP的定时关机命令?
Windows XP的关机是由Shutdown.exe程序来控制的,位于Windows/System32文件夹中.如 果想让Windows 2000也实现相同的效果,能够把Shutdown.exe拷贝 ...
- Mac定时关机、重启、休眠命令行
由于一些原因,需要在不上班的时间去连公司电脑来做一些事.所以公司电脑很少关机.但是在没多天没有关机以后电脑会变得很卡.所以现在每天早上去公司的第一件事情就是先重启一下电脑.人工重启,太不符合程序员的作 ...
- python制作电脑定时关机办公神器,另含其它两种方式,无需编程!
小编本人目前就是在电脑面前工作,常常会工作到凌晨两三点还在为自己的梦想奋斗着.有时在办公椅上就稀里糊涂睡着了,我相信有很多朋友和我一样,这样是很不好的.第一对身体不好,第二对电脑不好. 对身体 ...
- MFC入门(二)-- 提取输入框的字符串(定时关机的小程序)
上篇文章已经让我们有了对于MFC最简单直观的认识,但貌似并无太大的交互性可言,而且其实也没有涉及到数据的交互,所以本文通过做一个时间可以调节的定时关机的Demo来演示. MFC入门(一)地址:http ...
- windows批处理定时关机
2017-04-11 windows bat文件可以简化很多cmd命令,为我们提供很多方便.今天介绍定时关机的批处理代码实现: 我们知道windows下的定时关机可以通过shutdown命令实现,如果 ...
- python:基于tkinter的定时关机程
本人使用python3 from tkinter import* import os from PIL import Image, ImageTk root=Tk() a=Label(root,tex ...
- 手机控制电脑定时关机,重启WiFi
需求 晚上上床,电脑开着WiFi让手机上网.要么上床之前就给电脑设置定时关机:要么就电脑开通宵:要么就待会下来关电脑.这3种情况都非常不好,要么麻烦,要么浪费. 最无奈的是电脑刚开好WiFi,上床后才 ...
随机推荐
- python中变量的缓存机制
同一文件中, 变量的缓存机制 (在此范围内的相同值内存地址一样) Number: int: -5 ~ 正无穷 float: 非负数 bool: ...
- module 'pip' has no attribute 'pep425tags'
AMD64 import pip._internal print(pip._internal.pep425tags.get_supported()) 1 2 WIN32 import pip prin ...
- Shiro 五张表
参考博客: http://blog.csdn.net/frankcheng5143/article/details/50836619 Filter:运行过程中改变进入资源的请求和资源返回的响应中的有效 ...
- alt.js 使用教程
1.action : import alt from "../alt.js"; class DemoActions{ constructor() { this.generateAc ...
- Fragment重叠,使用show和hide控制显示和隐藏界面重叠问题;
Fragment重叠原因: App因某种原因崩溃自动重启,或App长期在后台运行Fragment依赖的activity被回收等等原因:当系统内存不足,Fragment 的依附Activity 被回收的 ...
- @ResponseBody返回中文乱码
1.在方法上修改编码 这种方式,需要对每个方法都进行配置. 2.修改springmvc的配置文件 同时注意,把这个配置写在扫描包的上面.
- django 之admin使用
Admin注册 内容发布的部分由网站的管理员负责查看.添加.修改.删除数据,开发这些重复的功能是一件单调乏味.缺乏创造力的工作,为此,Django能够根据定义的模型类自动地生成管理模块. 1)准备工作 ...
- 微信小程序笔记<七>视图层 —— wxml
微信小程序的视图层由 *.wxml 组成,wxml与html一样属于标签语言,但wxml与html的标签截然不一样. xwml特性 一.数据绑定 <!--wxml--> <view& ...
- Spring和SpringBoot比较,解惑区别
1.概述: 对于Spring和SpringBoot到底有什么区别,我听到了很多答案,刚开始迈入学习SpringBoot的我当时也是一头雾水,随着经验的积累.我慢慢理解了这两个框架到底有什么区别,我相信 ...
- hping安装过程
转载: http://www.safecdn.cn/website-announcement/2018/12/hping-install/97.html Hping的主要功能有: 测试防火墙实用的 ...