寫了一個關機程式,可以設定時間倒數,時間到關機
以下是下載處:(放在免費空間)
http://www.badongo.com/file/24679089
畫面:
以下是重點程式碼:
//*****************************************************************************
private void button1_Click(object sender, EventArgs e)//關機
{
Process process = new Process();
process.StartInfo.FileName = "shutdown.exe";
process.StartInfo.Arguments = "-s -t 0";
process.Start();
}
private void button2_Click(object sender, EventArgs e)//重啟
{
Process process = new Process();
process.StartInfo.FileName = "shutdown.exe";
process.StartInfo.Arguments = "-r -t 0";
process.Start();
}
//*****************************************************************************
//------------關機方法
public void guanji()
{
try
{
//啟動本地程序並執行命令
Process.Start("Shutdown.exe", " -s -t 0");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
//----------重啟重啟
public void chongqi()
{
try
{
//啟動本地程序並執行命令
Process.Start("shutdown.exe"," -r -t 0");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
//贈送一個使用win32API函數註銷的
//===================================================================================註銷 函數 聲明
[DllImport("user32.dll", EntryPoint = "ExitWindowsEx", CharSet = CharSet.Ansi)]
//ExitWindowsEx 函數
private static extern int ExitWindowsEx(int uFlags, int dwReserved);
//======================================================================================
public void zhuxiao() //註銷
{
ExitWindowsEx(0, 0);
}
//************************************************
C:\Program Files\Microsoft Visual Studio 9.0\VC>shutdown
用法: shutdown [/i | /l | /s | /r | /g | /a | /p | /h | /e] [/f]
[/m \\computer][/t xxx][/d [p|u:]xx:yy [/c "comment"]]
沒有參數 顯示幫助。這與鍵入 /? 是一樣的。
/? 顯示幫助。這與不鍵入任何選項是一樣的。
/i 顯示圖形用戶界面(GUI)。
這必須是第一個選項。
/l 註銷。這不能與 /m 或 /d 選項一起使用。
/s 關閉計算機。
/r 關閉並重新啟動計算機。
/g 關閉並重新啟動計算機。系統重新啟動後,
重新啟動所有註冊的應用程序。
/a 中止系統關閉。
這隻能在超時期間使用。
/p 關閉本地計算機,沒有超時或警告。
可以與 /d 和 /f 選項一起使用。
/h 休眠本地計算機。
可以與 /f 選項一起使用。
/e 記錄計算機意外關閉的原因。
/m \\computer 指定目標計算機。
/t xxx 設置關閉前的超時為 xxx 秒。
有效範圍是 0-600,默認為 30。
使用 /t xxx 表示已經設置 /f 選項。
/c "comment" 重啟動或關閉的原因的注釋。
最多允許 512 個字符。
/f 強制正在運行的應用程序關閉,不前台警告用戶。
與 /t xxx 一起使用時 /f 自動設置。
/d [p|u:]xx:yy 提供重新啟動或關機的原因。
p 表明重新啟動或關閉是計劃內的。
u 表示原因由用戶定義。
如果 p 和 u 都沒有指定,則重新啟動或關機是未計劃
xx 是主要原因號(小於 256 的正整數)。
yy 是次要原因號(小於 65536 的正整數)。
此計算機上的原因:
(E = 預期 U = 意外 P = 計劃, C = 自定義)
類別 主要 次要 標題
U 0 0 其他(沒有計劃的)
E 0 0 其他(沒有計劃的)
E P 0 0 其他(計劃的)
U 0 5 其他故障: 系統沒有反應
E 1 1 硬件: 維護(沒有計劃的)
E P 1 1 硬件: 維護(計劃的)
E 1 2 硬件: 安裝(沒有計劃的)
E P 1 2 硬件: 安裝(計劃的)
P 2 3 操作系統: 升級(計劃的)
E 2 4 操作系統: 重新配置(沒有計劃的)
E P 2 4 操作系統: 重新配置(計劃的)
P 2 16 操作系統: Service Pack (計劃中)
2 17 操作系統: 熱修補(沒有計劃)
P 2 17 操作系統: 熱修補(計劃中)
2 18 操作系統: 安全修補(沒有計劃)
P 2 18 操作系統: 安全修補(計劃中)
E 4 1 應用程序: 維護(沒有計劃的)
E P 4 1 應用程序: 維護(計劃的)
E P 4 2 應用程序: 安裝(計劃中)
E 4 5 應用程序: 沒有反應
E 4 6 應用程序: 不穩定
U 5 15 系統故障: 停止錯誤
E 5 19 安全問題
U 5 19 安全問題
E P 5 19 安全問題
E 5 20 網絡連接性丟失(沒有計劃的)
U 6 11 電源故障: 電線被拔掉
U 6 12 電源故障: 環境
P 7 0 舊版 API 關機
-------------------------------
另外你也可以掉用API關機.
不過我發誓你肯定覺得那比shutdown更麻煩...