C#编程实例代码之一 自动关机小程序
//本程序aweige使用类似MSN的滚动显示窗口,这是主窗口程序。 < LT电脑网络部落
www.luotuo.net >
namespace shutdown
{
/// < LT电脑网络部落 www.luotuo.net >
/// Form1 的摘要说明。 < LT电脑网络部落 www.luotuo.net >
/// < LT电脑网络部落 www.luotuo.net >
public class Form1 : System.Windows.Forms.Form
{
//定义几个控件先,呵呵
private System.Windows.Forms.GroupBox gb_current; < LT电脑网络部
落 www.luotuo.net >
private System.Windows.Forms.GroupBox gb_set;
private System.Windows.Forms.CheckBox cb_auto;
private System.Windows.Forms.CheckBox cb_alert;
private System.Windows.Forms.MainMenu mainMenu1;
private System.Windows.Forms.MenuItem mi_file;
private System.Windows.Forms.MenuItem mi_quit; < LT电脑网络部落
www.luotuo.net >
private System.Windows.Forms.MenuItem mi_opero;
private System.Windows.Forms.MenuItem mi_shutdowm;
private System.Windows.Forms.MenuItem mi_reboot;
private System.Windows.Forms.MenuItem mi_logoff;
private System.Windows.Forms.MenuItem mi_sysinfo; < LT电脑网络部
落 www.luotuo.net >
private System.Windows.Forms.MenuItem mi_help;
private System.Windows.Forms.MenuItem mi_how;
private System.Windows.Forms.MenuItem mi_about;
private System.Windows.Forms.MenuItem mi_aweige; < LT电脑网络部
落 www.luotuo.net >
private System.Windows.Forms.DateTimePicker dtp_date; < LT电脑网
络部落 www.luotuo.net >
private System.Windows.Forms.Timer timer1; < LT电脑网络部落
www.luotuo.net >
private System.Windows.Forms.DateTimePicker dtp_time; < LT电脑网
络部落 www.luotuo.net >
private System.Windows.Forms.Label tb_current;
private System.ComponentModel.IContainer components; < LT电脑网络部落 www.luotuo.net >
public Form1() < LT电脑网络部落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// Windows 窗体设计器支持所必需的 < LT电脑网络部落
www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
InitializeComponent(); < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// TODO: 在 InitializeComponent 调用后添加任何构造函数代
码
//
} < LT电脑网络部落 www.luotuo.net >
< LT电脑网络部落 www.luotuo.net >
///
/// 清理所有正在使用的资源。 < LT电脑网络部落 www.luotuo.net >
/// < LT电脑网络部落 www.luotuo.net >
protected override void Dispose( bool disposing ) < LT电脑网络部
落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
if( disposing ) < LT电脑网络部落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
if (components != null) < LT电脑网络部落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
components.Dispose();
} < LT电脑网络部落 www.luotuo.net >
}
base.Dispose( disposing ); < LT电脑网络部落 www.luotuo.net >
} < LT电脑网络部落 www.luotuo.net >
< LT电脑网络部落 www.luotuo.net >
#region Windows 窗体设计器生成的代码
///
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
///
private void InitializeComponent() < LT电脑网络部落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
this.components = new System.ComponentModel.Container(); <
LT电脑网络部落 www.luotuo.net >
System.Resources.ResourceManager resources = new
System.Resources.ResourceManager(typeof(Form1));
this.gb_current = new System.Windows.Forms.GroupBox(); <
LT电脑网络部落 www.luotuo.net >
this.tb_current = new System.Windows.Forms.Label(); < LT
电脑网络部落 www.luotuo.net >
this.gb_set = new System.Windows.Forms.GroupBox();
this.dtp_time = new
System.Windows.Forms.DateTimePicker();
this.dtp_date = new System.Windows.Forms.DateTimePicker(); < LT电脑网络部落 www.luotuo.net >
this.cb_auto = new System.Windows.Forms.CheckBox();
this.cb_alert = new System.Windows.Forms.CheckBox();
this.mainMenu1 = new System.Windows.Forms.MainMenu();
this.mi_file = new System.Windows.Forms.MenuItem(); < LT电脑网络部落 www.luotuo.net >
this.mi_quit = new System.Windows.Forms.MenuItem();
this.mi_opero = new System.Windows.Forms.MenuItem();
this.mi_shutdowm = new System.Windows.Forms.MenuItem(); < LT电脑网络部落 www.luotuo.net >
this.mi_reboot = new System.Windows.Forms.MenuItem(); < LT电脑网络部落 www.luotuo.net >
this.mi_logoff = new System.Windows.Forms.MenuItem();
this.mi_sysinfo = new System.Windows.Forms.MenuItem();
this.mi_help = new System.Windows.Forms.MenuItem(); < LT电脑网络部落 www.luotuo.net >
this.mi_how = new System.Windows.Forms.MenuItem(); < LT电脑网络部落 www.luotuo.net >
this.mi_about = new System.Windows.Forms.MenuItem(); < LT电脑网络部落 www.luotuo.net >
this.mi_aweige = new System.Windows.Forms.MenuItem();
this.timer1 = new
System.Windows.Forms.Timer(this.components); < LT电脑网络部落 www.luotuo.net >
this.gb_current.SuspendLayout();
this.gb_set.SuspendLayout(); < LT电脑网络部落
www.luotuo.net >
this.SuspendLayout();
// < LT电脑网络部落 www.luotuo.net >
// gb_current < LT电脑网络部落 www.luotuo.net >
//
this.gb_current.Controls.Add(this.tb_current);
this.gb_current.Location = new System.Drawing.Point(16, 8); < LT电脑网络部落 www.luotuo.net >
this.gb_current.Name = "gb_current"; < LT电脑网络部落
www.luotuo.net >
this.gb_current.Size = new System.Drawing.Size(184, 56);
this.gb_current.TabIndex = 0;
this.gb_current.TabStop = false; < LT电脑网络部落
www.luotuo.net >
this.gb_current.Text = "当前时间"; < LT电脑网络部落
www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// tb_current
//
this.tb_current.Location = new System.Drawing.Point(8,
24);
this.tb_current.Name = "tb_current"; < LT电脑网络部落
www.luotuo.net >
this.tb_current.Size = new System.Drawing.Size(168, 23);
this.tb_current.TabIndex = 0;
// < LT电脑网络部落 www.luotuo.net >
// gb_set
//
this.gb_set.Controls.Add(this.dtp_time); < LT电脑网络部
落 www.luotuo.net >
this.gb_set.Controls.Add(this.dtp_date);
this.gb_set.Location = new System.Drawing.Point(216, 8);
this.gb_set.Name = "gb_set";
this.gb_set.Size = new System.Drawing.Size(240, 56); < LT
电脑网络部落 www.luotuo.net >
this.gb_set.TabIndex = 1;
this.gb_set.TabStop = false; < LT电脑网络部落
www.luotuo.net >
this.gb_set.Text = "关机时间"; < LT电脑网络部落
www.luotuo.net >
//
// dtp_time
//
this.dtp_time.Format =
System.Windows.Forms.DateTimePickerFormat.Time;
this.dtp_time.Location = new System.Drawing.Point(128, 24);
< LT电脑网络部落 www.luotuo.net >
this.dtp_time.Name = "dtp_time"; < LT电脑网络部落
www.luotuo.net >
this.dtp_time.ShowUpDown = true;
this.dtp_time.Size = new System.Drawing.Size(96, 20); < LT
电脑网络部落 www.luotuo.net >
this.dtp_time.TabIndex = 1;
this.dtp_time.Value = new System.DateTime(2006, 6, 27, 11,
18, 0, 0); < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// dtp_date < LT电脑网络部落 www.luotuo.net >
//
this.dtp_date.Format =
System.Windows.Forms.DateTimePickerFormat.Custom; < LT电脑网络部落
www.luotuo.net >
this.dtp_date.Location = new System.Drawing.Point(8, 24);
this.dtp_date.Name = "dtp_date"; < LT电脑网络部落 www.luotuo.net >
this.dtp_date.Size = new System.Drawing.Size(112, 20); < LT
电脑网络部落 www.luotuo.net >
this.dtp_date.TabIndex = 0;
this.dtp_date.Value = new System.DateTime(2006, 6, 26, 0,
0, 0, 0);
// < LT电脑网络部落 www.luotuo.net >
// cb_auto
//
this.cb_auto.Location = new System.Drawing.Point(96, 88);
this.cb_auto.Name = "cb_auto"; < LT电脑网络部落 www.luotuo.net >
this.cb_auto.TabIndex = 2;
this.cb_auto.Text = "自动关机"; < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// cb_alert < LT电脑网络部落 www.luotuo.net >
//
this.cb_alert.Location = new System.Drawing.Point(224, 88);
< LT电脑网络部落 www.luotuo.net >
this.cb_alert.Name = "cb_alert"; < LT电脑网络部落 www.luotuo.net >
this.cb_alert.TabIndex = 4; < LT电脑网络部落 www.luotuo.net >
this.cb_alert.Text = "到时提示"; < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// mainMenu1
// 这个是主菜单下面分了3各子菜单
this.mainMenu1.MenuItems.AddRange(new
System.Windows.Forms.MenuItem[] { < LT电脑网络部落 www.luotuo.net >
this.mi_file,
this.mi_opero, < LT电脑网络部落 www.luotuo.net >
this.mi_help}); < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// mi_file
// 这个是“文件”菜单 < LT电脑网络部落 www.luotuo.net >
this.mi_file.Index = 0;
this.mi_file.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.mi_quit}); < LT电脑网络部落 www.luotuo.net >
this.mi_file.Text = "文件";
//
// mi_quit < LT电脑网络部落 www.luotuo.net >
// 文件——退出
this.mi_quit.Index = 0; < LT电脑网络部落 www.luotuo.net >
this.mi_quit.Text = "退出";
this.mi_quit.Click += new System.EventHandler(this.mi_quit_Click);
// < LT电脑网络部落 www.luotuo.net >
// mi_opero < LT电脑网络部落 www.luotuo.net >
// 操作菜单
this.mi_opero.Index = 1; < LT电脑网络部落 www.luotuo.net >
this.mi_opero.MenuItems.AddRange(new
System.Windows.Forms.MenuItem[] { < LT电脑网络部落 www.luotuo.net >
this.mi_shutdowm,
this.mi_reboot,
this.mi_logoff,
this.mi_sysinfo}); < LT电脑网络部落 www.luotuo.net >
this.mi_opero.Text = "操作";
// < LT电脑网络部落 www.luotuo.net >
// mi_shutdowm < LT电脑网络部落 www.luotuo.net >
// 操作——关机 < LT电脑网络部落 www.luotuo.net >
this.mi_shutdowm.Index = 0;
this.mi_shutdowm.Text = "现在关机"; < LT电脑网络部落 www.luotuo.net >
this.mi_shutdowm.Click += new System.EventHandler(this.mi_shutdowm_Click);
// < LT电脑网络部落 www.luotuo.net >
// mi_reboot < LT电脑网络部落 www.luotuo.net >
// 操作——重启 < LT电脑网络部落 www.luotuo.net >
this.mi_reboot.Index = 1;
this.mi_reboot.Text = "重新启动";
this.mi_reboot.Click += new System.EventHandler(this.mi_reboot_Click);
// < LT电脑网络部落 www.luotuo.net >
// mi_logoff
// 操作——注销 < LT电脑网络部落 www.luotuo.net >
this.mi_logoff.Index = 2;
this.mi_logoff.Text = "注销"; < LT电脑网络部落 www.luotuo.net >
this.mi_logoff.Click += new System.EventHandler(this.mi_logoff_Click); < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// mi_sysinfo
// 操作——系统信息
this.mi_sysinfo.Index = 3; < LT电脑网络部落 www.luotuo.net >
this.mi_sysinfo.Text = "系统信息";
this.mi_sysinfo.Click += new System.EventHandler(this.mi_sysinfo_Click);
// < LT电脑网络部落 www.luotuo.net >
// mi_help
// 帮助菜单,下面有3个子菜单
this.mi_help.Index = 2; < LT电脑网络部落 www.luotuo.net >
this.mi_help.MenuItems.AddRange(new
System.Windows.Forms.MenuItem[] { < LT电脑网络部落 www.luotuo.net >
this.mi_how,
this.mi_about,
this.mi_aweige});
this.mi_help.Text = "帮助";
//
// mi_how
// 帮助——怎么玩
this.mi_how.Index = 0; < LT电脑网络部落 www.luotuo.net >
this.mi_how.Text = "如何玩"; < LT电脑网络部落 www.luotuo.net >
this.mi_how.Click += new System.EventHandler(this.mi_how_Click);
//
// mi_about < LT电脑网络部落 www.luotuo.net >
// 帮助——关于
this.mi_about.Index = 1;
this.mi_about.Text = "关于本软件"; < LT电脑网络部落 www.luotuo.net >
this.mi_about.Click += new System.EventHandler(this.mi_about_Click); < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// mi_aweige < LT电脑网络部落 www.luotuo.net >
// 帮助——关于aweige
this.mi_aweige.Index = 2;
this.mi_aweige.Text = "关于作者";
this.mi_aweige.Click += new System.EventHandler(this.mi_aweige_Click); < LT电脑网络部落 www.luotuo.net >
// < LT电脑网络部落 www.luotuo.net >
// timer1
//
this.timer1.Enabled = true;
this.timer1.Interval = 1000;
this.timer1.Tick += new
System.EventHandler(this.timer1_Tick);
// < LT电脑网络部落 www.luotuo.net >
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.BackColor = System.Drawing.Color.Honeydew;
this.ClientSize = new System.Drawing.Size(472, 129); < LT
电脑网络部落 www.luotuo.net >
this.Controls.Add(this.cb_alert); < LT电脑网络部落
www.luotuo.net >
this.Controls.Add(this.cb_auto); < LT电脑网络部落
www.luotuo.net >
this.Controls.Add(this.gb_set); < LT电脑网络部落
www.luotuo.net >
this.Controls.Add(this.gb_current);
this.ForeColor = System.Drawing.Color.IndianRed;
this.Icon =
((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Menu = this.mainMenu1;
this.MinimumSize = new System.Drawing.Size(480, 176);
this.Name = "Form1"; < LT电脑网络部落 www.luotuo.net >
this.Text = "关机小程序V1.0";
this.Load += new System.EventHandler(this.Form1_Load);
this.gb_current.ResumeLayout(false);
this.gb_set.ResumeLayout(false);
this.ResumeLayout(false); < LT电脑网络部落
www.luotuo.net >
}
#endregion
< LT电脑网络部落 www.luotuo.net >
/// < LT电脑网络部落 www.luotuo.net >
/// 应用程序的主入口点。
/// < LT电脑网络部落 www.luotuo.net >
[System.STAThread]
static void Main() < LT电脑网络部落 www.luotuo.net >
{
System.Windows.Forms.Application.Run(new Form1()); < LT
电脑网络部落 www.luotuo.net >
}
private void mi_quit_Click(object sender, System.EventArgs e) < LT
电脑网络部落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
System.Windows.Forms.Application.Exit();
}
< LT电脑网络部落 www.luotuo.net >
private void mi_aweige_Click(object sender, System.EventArgs e) <
LT电脑网络部落 www.luotuo.net >
{
Form_msg frm_msg = new Form_msg();
frm_msg.Show(); < LT电脑网络部落 www.luotuo.net >
}
private void mi_about_Click(object sender, System.EventArgs e) < LT
电脑网络部落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
Form_msg frm_msg = new Form_msg(); < LT电脑网络部落
www.luotuo.net >
frm_msg.Text = "about";
frm_msg.Show();
} < LT电脑网络部落 www.luotuo.net >
private void mi_how_Click(object sender, System.EventArgs e)
{
Form_msg frm_msg = new Form_msg(); < LT电脑网络部落
www.luotuo.net >
frm_msg.Text = "how";
frm_msg.Show();
}
< LT电脑网络部落 www.luotuo.net >
private void Form1_Load(object sender, System.EventArgs e) < LT
电脑网络部落 www.luotuo.net >
{
}
private void timer1_Tick(object sender, System.EventArgs e) < LT
电脑网络部落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
//接收及时日期和时间,用于及时显示
string[] DateArry =
System.DateTime.Now.ToString().Split(" ".ToCharArray());
string CurrDate = DateArry[0]; //当前日期
string CurrTime = DateArry[1]; //当前时间 < LT电
脑网络部落 www.luotuo.net >
< LT电脑网络部落 www.luotuo.net >
//再用两个数组来装载选择框的日期和时间 < LT电脑网络部落
www.luotuo.net >
string[] ddArry =
(this.dtp_date.Value).ToString().Split(" ".ToCharArray());
string[] ttArry =
(this.dtp_time.Value).ToString().Split(" ".ToCharArray());
string dd = ddArry[0]; < LT电脑网络部落 www.luotuo.net >
string tt = ttArry[1]; < LT电脑网络部落 www.luotuo.net >
//this.tb_current.Text =CurrDate + " " + CurrTime; < LT
电脑网络部落 www.luotuo.net >
this.tb_current.Text = System.DateTime.Now.ToString(); <
LT电脑网络部落 www.luotuo.net >
//每1秒就检测一次关机设定是否有效 < LT电脑网络部落
www.luotuo.net >
if( this.cb_auto.Checked)
{ < LT电脑网络部落 www.luotuo.net >
if(CurrDate == dd && CurrTime== tt)
ColseComputer();
} < LT电脑网络部落 www.luotuo.net >
else if(this.cb_alert.Checked) //检测是否
需要提示
{
if(CurrDate == dd && CurrTime == tt) < LT电脑网
络部落 www.luotuo.net >
{
//Form_msg frm_msg = new Form_msg();
//frm_msg.Text = "alert"; < LT电脑网络部
落 www.luotuo.net >
//frm_msg.Show(); < LT电脑网络部落
www.luotuo.net >
Form2 frm = new Form2(); < LT电脑网络部
落 www.luotuo.net >
frm.Text = "alert";
frm.scrollshow();
}
} < LT电脑网络部落 www.luotuo.net >
}
private void ColseComputer() < LT电脑网络部落 www.luotuo.net >
{
//sh = ExitWindowsEx(SHUTDOWN, dwReserved);
//sh = ExitWindowsEx(EWX_POWEROFF, 0);
//98 < LT电脑网络部落 www.luotuo.net >
string filename;
if(System.IO.File.Exists("c:/windows/system32/shutdown.exe")) < LT电脑网络部落 www.luotuo.net >
{
filename = "c:/windows/system32/shutdown.exe";
Process.Start(filename,"-s"); < LT电脑网络部落 www.luotuo.net >
}
else
{ < LT电脑网络部落 www.luotuo.net >
alertif2k();
} < LT电脑网络部落 www.luotuo.net >
} < LT电脑网络部落 www.luotuo.net >
private void mi_sysinfo_Click(object sender, System.EventArgs e)
{ < LT电脑网络部落 www.luotuo.net >
Form2 frm=new Form2();
//frm.Show();
frm.Height = 120; //新窗口高度 < LT电脑网络部落 www.luotuo.net >
frm.Width = 148; //宽度
frm.Text = "sysinfo";
frm.scrollshow(); < LT电脑网络部落 www.luotuo.net >
} < LT电脑网络部落 www.luotuo.net >
private void mi_reboot_Click(object sender, System.EventArgs e ) <
LT电脑网络部落 www.luotuo.net >
{
//sh = ExitWindowsEx(REBOOT, dwReserved); //NT系统下需
要权限设置,不知道怎么设置,所以改用进程启动来执行 < LT电脑网络部落 www.luotuo.net >
string filename;
if(System.IO.File.Exists("c:/windows/system32/shutdown.exe")) < LT电脑网络部落 www.luotuo.net >
{
filename = "c:/windows/system32/shutdown.exe";
//winXP或2003
Process.Start(filename,"-r");
}
else
{ < LT电脑网络部落 www.luotuo.net >
//filename = "c:/winnt/system32/shutdown.exe";
//win2k系统
alertif2k();
} < LT电脑网络部落 www.luotuo.net >
}
private void mi_logoff_Click(object sender, System.EventArgs e )
{
string filename; < LT电脑网络部落 www.luotuo.net >
if(System.IO.File.Exists("c:/windows/system32/shutdown.exe")) < LT电脑网络部落
www.luotuo.net >
{
filename = "c:/windows/system32/shutdown.exe";
//winXP或2003
Process.Start(filename,"-l"); < LT电脑网络部落
www.luotuo.net >
}
else < LT电脑网络部落 www.luotuo.net >
{
//filename = "c:/winnt/system32/shutdown.exe";
//win2k系统
alertif2k();
} < LT电脑网络部落 www.luotuo.net >
}
private void alertif2k()
{
System.Windows.Forms.MessageBox.Show("你的系统是
windows2000的,不适合用本软件\n下一版本将改进这一缺陷,敬请期待~","软件不支持本
系统——aweige");
}
private void ButCancle_Click(object sender, System.EventArgs e ) <
LT电脑网络部落 www.luotuo.net >
{
this.Close();
} < LT电脑网络部落 www.luotuo.net >
private void mi_shutdowm_Click(object sender, System.EventArgs e )
< LT电脑网络部落 www.luotuo.net >
{ < LT电脑网络部落 www.luotuo.net >
ColseComputer();
} < LT电脑网络部落 www.luotuo.net >
} < LT电脑网络部落 www.luotuo.net >
}