using System.Runtime.InteropServices;using System.Text; [DllImport("user32")] public static extern long SetWindowPos(long hwnd,long hWndInsertAfter,long X,long y,long cx,long cy,long wFlaglong); [DllImport("user32")] public static extern long ExitWindowsEx(long uFlags, long dwReserved); [DllImport("shell32")] public static extern long ShellAbout(long uFlags, long deReserved);namespace 关闭windows{ public partial class frmmain : Form { long dwReserved; const int SHUTDOWN=1; const int REBOOT =2; const int LOGOFF=0; long sh; int counter,n; public frmmain() { InitializeComponent(); } private void frmmain_Load(object sender, System.EventArgs e) { //用系统时间初始化组件 TxtTime.Text = System.DateTime.Today.ToShortDateString() + "" + System.DateTime.Today.ToLongDateString(); } private void Timer1_Tick(object sender, System.EventArgs e) { //接受当前日期和时间,用于即时显示 string CurrDate = System.DateTime.Today.ToShortDateString(); string CurrTime = System.DateTime.Today.ToLongDateString(); //随时检测设定的官即日起和时间是否有效 if (this.CheckBox1.Checked == true) { if (CurrDate == SetupDate.ToString() && CurrTime == SetupTime.ToString()) ColseComputer(); } } private void ColseComputer() { sh = ExitWindowsEx(SHUTDOWN, dwReserved); } private void ButSysInfo_Click(object sender,System.EventArgs e) { Form2 frm=new Form2(); frm.Show(); } private void ButReOpen_Click(object sender,System.EventArgs e) { sh =ExitWindowsEx(REBOOT,dwReserved); } private void ButReLogin_Click(object sender,System.EventArgs e) { sh=ExitWindowsEx(LOGOFF,dwReserved); } private void ButCancel_Click(object sender,System.EventArgs e) { this.Close(); } private void ButClose_Click_l(object sender,System.EventArgs e) { sh =ExitWindowsEx(REBOOT,dwReserved)
不知道你这个问题是否已经解决, 如果还没有解决的话: