下载地址:http://download.youkuaiyun.com/source/451364
晚上的时候太困,想躺床上看电影,怕睡着,
就在网上下载了个自动关机的软件,测试了一下,结果不好用
于是乎我的精神头来了,写了个自动关机的,在网上查了下执行CMD部分的内容后就写了个,自给自足,呵
我是新手,写出来后还真蛮有成就感的,哈。提供给大家。
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Text;
using
System.Windows.Forms;
using
System.Diagnostics;
namespace
WindowsApplication1
...
{
public partial class Form1 : Form
...{
int i = 0;
private int ti;
public Form1()
...{
InitializeComponent();
timer1.Enabled = false;
}
public string CmdPc(string cmdinput)
...{
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;
try
...{
p.Start();
p.StandardInput.WriteLine(cmdinput);
p.StandardInput.WriteLine("exit");
string ss=p.StandardOutput.ReadToEnd();
p.WaitForExit();
p.Close();
return ss;
}
catch 
...{
string ss = "命令执行失败";
return ss;
}
}
private void button1_Click(object sender, EventArgs e)
...{
//label1.Text = ClosePc();
if (textBox2.Text != "")
...{
ti = Convert.ToInt32(textBox2.Text);
timer1.Enabled = true;
button3.Enabled = true;
button4.Enabled = true;
button1.Enabled = false;
}
else ...{ label4.Text = "请输入时间,单位/分钟"; }
}
private void timer1_Tick(object sender, EventArgs e)
...{
if (ti - i == 1)//从5开始到计时
...{
timer1.Enabled = false;
label4.Text = "时间到,关机!!";
label1.Text = CmdPc("Shutdown.exe -s -f");
button4.Visible = true;
}
else
...{
i++;
string j = (ti - i).ToString();
label4.Text = j;
} 
}
private void button3_Click(object sender, EventArgs e)
...{
timer1.Enabled = true;
button4.Enabled = true;
button1.Enabled = true;
}
private void button2_Click(object sender, EventArgs e)
...{
label1.Text=CmdPc(textBox1.Text);
}
private void button4_Click_1(object sender, EventArgs e)
...{
timer1.Enabled = false;
button4.Enabled = false;
button1.Enabled = true;
label4.Text = "停止";
}
private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
...{
if (e.KeyChar == 13)
...{
ti = Convert.ToInt32(textBox2.Text);
timer1.Enabled = true;
button3.Enabled = true;
button4.Enabled = true;
button1.Enabled = false;
}
}


}
}
本文介绍了一个简单的自动关机程序实现方案,使用C#编写,通过命令行调用来执行关机操作。用户可以设置延迟关机的时间,程序还包含了启动、停止及取消关机等功能。





