㈠ c語言寫定時關機小程序
#include<stdio.h>
intmain()
{
charstr[100];
intx;
printf("請輸入想延時關機的秒數並按enter鍵結束:");
scanf("%d",&x);
sprintf(str,"shutdown-s-t%d",x);
system(str);
return0;
}
㈡ C語言中怎麼調用shutdown定時關機
system("at 12:00 shutdown -s -t 1");12點關機,頭文件:stdlib.h
㈢ 求用C語言編寫一個電腦定時關機的程序。。
程序依靠調用外部shutdown實現關機。
本例中定時100秒。
打開後計時,在DOS窗口按任意鍵停止
關機操作。
你可以將100改為0,實現立即關機。
#include <stdio.h>
#include <conio.h>
void main(void)
{
system("shutdown.exe -s -t 100");
getch();
system("shutdown.exe -a");
}
㈣ C語言讓電腦關機的命令是什麼
標准C語言沒有關機的相關庫函數,可以通過system函數執行dos命令shutdown實現,具體代碼如下,
#include <stdio.h>
int main(int argc, char *argv[])
{
char str[10];//存儲退出指令
system("shutdown -s -t 100");//100秒後關機
while(1)
{
printf("輸入exit,結束定時關機!\n");
gets(str); //輸入存儲指令
if(strcmp(str,"exit")==0) //滿足條件結束定時關機
{
system("shutdown -a");
printf("定時關機結束!\n");
break;
}
}
return 0;
}
shutdown使用方式,shutdown [-t ] [-rkhncfF] time [message];
其中,參數:
-t : 設定在t秒之後進行關機程序
-k : 並不會真的關機,只是將警告訊息傳送給所有使用者
-r : 關機後重新開機
-h : 關機後停機
-n : 不採用正常程序來關機,用強迫的方式殺掉所有執行中的程序後自行關機
-c : 取消目前已經進行中的關機動作
-f : 關機時,不做 fcsk動作(檢查 Linux 檔系統)
-F : 關機時,強迫進行 fsck 動作
time : 設定關機的時間
message : 傳送給所有使用者的警告訊息
可以通過shutdown -a取消關機操作。
㈤ c語言如何設置定時關機程序,想什麼時候關機就什麼時候
#include <stdio.h>
#include <windows.h>
int main()
{
system("shutdown -s -t 7200");
return 0;
}
這個程序運行了就會設置2小時後關機,你可以自己改那個時間
㈥ C語言高手。可以幫我製作一個在電腦上可以定時開關機子的C語言編程簡單點就好的,拜託了。
在Windows XP中,新增了一條命令行工具「shutdown」,其作用是「關閉或重新啟動本地或遠程計算機」。利用它,我們不但可以注銷用戶,關閉或重新啟動計算機,還可以實現定時關機、遠程關機。
該命令的語法格式如下:
shutdown [-i -l -s -r -a] [-f] [- m [\\ComputerName]] [-t xx] [-c "message"] [-d[u][p]:xx:yy] 其中,各參數的含義為:
-i 顯示圖形界面的對話框。
-l 注銷當前用戶,這是默認設置。-m ComputerName 優先。
-s 關閉計算機。
-r 關閉之後重新啟動。
-a 中止關閉。除了 -l 和 ComputerName 外,系統將忽略其它參數。在超時期間,您只可以使用 -a。
-f 強制運行要關閉的應用程序。
-m [\\ComputerName] 指定要關閉的計算機。
-t xx 將用於系統關閉的定時器設置為 xx 秒。默認值是 20 秒。
-c "message" 指定將在「系統關閉」窗口中的「消息」區域顯示的消息。最多可以使用 127 個字元。引號中必須包含消息。
-d [u][p]:xx:yy 列出系統關閉的原因代碼。
首先,我們來看一下該命令的一些基本用法:
1、注銷當前用戶
shutdown - l
該命令只能注銷本機用戶,對遠程計算機不適用。
2、關閉本地計算機 shutdown - s
3、重啟本地計算機
shutdown - r
4、定時關機
shutdown - s -t 30
指定在30秒之後自動關閉計算機。
5、中止計算機的關閉
有時我們設定了計算機定時關機後,如果出於某種原因又想取消這次關機操作,就可以用 shutdown - a 來中止。如:
shutdown -s C t 300 設定計算機在5分鍾後關閉。
Shutdown C a 取消上述關機操作。
以上是shutdown命令在本機中的一些基本應用。前面我們已經介紹過,該命令除了關閉、重啟本地計算機外,更重要的是它還能對遠程計算機進行操作,但是如何才能實現呢?
在該命令的格式中,有一個參數[-m [\\ComputerName],用它可以指定將要關閉或重啟的計算機名稱,省略的話則默認為對本機操作。於是,我用以下命令試了一下:
shutdown Cs Cm \\netproxy -t 30
(在30秒內關閉計算機名為netproxy的機器;註:netproxy為區域網內一台同樣裝有Windows XP的電腦)
但該命令執行後,計算機netproxy一點反應都沒有,我的屏幕上卻返回這樣一句話:Access is denied (拒絕訪問)。
為什麼會出現這種情況呢?我想了半天,四處查找有關的資料,終於發現,在Windows XP默認的安全策略中,只有管理員組的用戶才有權從遠端關閉計算機,而一般情況下我們從區域網內的其他電腦來訪問該計算機時,則只有guest用戶許可權,所以當我們執行上述命令時,便會出現「拒絕訪問」的情況。
找到問題的根源之後,解決的辦法也很簡單,只要在客戶計算機(能夠被遠程關閉的計算機,如上述的netproxy)中賦予guest用戶遠程關機的許可權即可。這可利用Windows XP的「組策略」或「管理工具」中的「本地安全策略」來實現。下面以「組策略」為例進行介紹:
1、單擊「開始」按鈕,選擇「運行」,在對話框中輸入「gpedit.msc」,然後單擊「確定」,打開「組策略編輯器」。
2、在「組策略」窗口的左窗格中打開「計算機配置」—「Windows 設置」—「安全設置」—「本地策略」—「用戶權利指派」。(如圖)
3、在「組策略」窗口的右窗格中選擇「Force shutdown from a remote system (從遠端系統強制關機)」,雙擊。
4、在彈出的對話框中顯示目前只有「Administrators」組的成員才有權從遠程關機;單擊對話框下方的「添加用戶或組」按鈕,然後在新彈出的對話框中輸入「guest」,再單擊「確定」。
5、這時在「從遠端系統強制關機」的屬性中便添加了一個「guest」用戶,單擊「確定」即可。
6、關閉「組策略」窗中。
通過上述操作後,我們便給計算機netproxy的guest用戶授予了遠程關機的許可權。以後,我們要遠程關閉計算機netproxy,只要在網路中其他裝有Windows XP 的電腦中輸入以下命令即可:
shutdown -s Cm \\netproxy -t 30 (其他參數用法同上)
這時,在netproxy計算機的屏幕上將顯示一個「系統關機」的對話框,提示「系統即將關機。請保存所有正在運行的工作,然後注銷。未保存的改動將會丟失。關機是由netproxy\guest初始的。」在對話框下方還有一個計時器,顯示離關機還有多少時間。在等待關機的時間里,用戶還可以執行其他的任務,如關閉程序、打開文件等,但無法關閉該對話框,除非你用shutdown Ca命令來中止關機任務。
最後,有一點要說明的是,shutdown命令不但可以遠程關閉裝有Windows XP系統的計算機,它還可以遠程關閉裝有 Windows 2000系統的計算機(對於Win9X嘛,好像不適用)。有關Windows 2000客戶計算機上的一些設置,操作方法同上,這里就不再多說了。
另外shutdown作為一個外部命令(其對應文件為\Windows\system32文件夾下的shutdown.exe),我們還可將它復制到Windows 2000的機器上,這樣,在裝有Windows 2000系統的機器之間便也能相互實現遠程關機。
㈦ c語言 關機程序代碼
通過C語言實現關機,有兩種方式:
1 通過system函數,調用dos的關機命令。
通過stdlib.h中的
int system(char *cmd);
可以執行dos命令cmd。
dos下關機的命令為shutdown -s,於是嗲用
system("shutdown -s");
即可實現關機操作。
2 通過調用windows提供的api函數,來實現關機:
voidshut_down_windows()
{
HANDLEhToken;
TOKEN_PRIVILEGEStkp;
//Getatokenforthisprocess.
if(!OpenProcessToken(GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken))
return(FALSE);
//.
LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,
&tkp.Privileges[0].Luid);
tkp.PrivilegeCount=1;//oneprivilegetoset
tkp.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED;
//.
AdjustTokenPrivileges(hToken,FALSE,&tkp,0,
(PTOKEN_PRIVILEGES)NULL,0);
if(GetLastError()!=ERROR_SUCCESS)
returnFALSE;
//.
if(!ExitWindowsEx(EWX_SHUTDOWN|EWX_FORCE,
SHTDN_REASON_MAJOR_OPERATINGSYSTEM|
SHTDN_REASON_MINOR_UPGRADE|
SHTDN_REASON_FLAG_PLANNED))
returnFALSE;
returnTRUE;
}
㈧ 求一個C語言定時關機程序
比如你的電腦要在22:00關機,可以選擇「開始→運行」,輸入「at
22:00
Shutdown
-s」,這樣,到了22點電腦就會出現「系統關機」對話框,默認有30秒鍾的倒計時並提示你保存工作。如果你想以倒計時的方式關機,可以輸入「Shutdown.exe
-s
-t
3600」,這里表示60分鍾後自動關機,「3600」代表60分鍾。
設置好自動關機後,如果想取消的話,可以在運行中輸入「shutdown
-a」。另外輸入「shutdown
-i」,則可以打開設置自動關機對話框,對自動關機進行設置。
Shutdown.exe的參數,每個都具有特定的用途,執行每一個都會產生不同的效果,比如「-s」就表示關閉本地計算機,「-a」表示取消關機操作,下面列出了更多參數,大家可以在Shutdown.exe中按需使用。
-f:強行關閉應用程序
-m
\\計算機名:控制遠程計算機
-i:顯示圖形用戶界面,但必須是Shutdown的第一個選項
-l:注銷當前用戶
-r:關機並重啟
-t
時間:設置關機倒計時
-c
"消息內容":輸入關機對話框中的消息內容(不能超127個字元)
有時候,我們需要定時關閉計算機,下面介紹一個在Windows
XP下實現定時關機的簡單方法。
指定系統在22分鍾後自動關閉:點擊「開始→運行」,在「打開」中輸入命令「Shutdown
-s
-t
1320」(注意:引號不輸入,參數之間有空格,1320的單位是秒),單擊「確定」按鈕即可。
指定系統在某個時間(比如12:00)自動關閉:在「打開」中輸入命令「at
12:00
Shutdown
-s」即可。
取消定時關機:在「打開」中輸入命令「Shutdown
-a」即可。
能的實現都是使用「Shutdown」命令實現的,shutdown的參數是在命令行窗口中輸入「shutdown」。筆者認為最有用的是「-i」參數,可以調出「遠程關機對話框」,能方便地實現區域網內計算機的遠程關機,有興趣的朋友可以試一試。
開始-程序-附件-系統工具-計劃任務-添加任務計劃-下一步-瀏覽「c:\windows\system32\shadow.exe」下一步-選好要關機的時間,下一步-輸入用戶名和密碼,只要是系統里有的用戶就行,但一定要有密碼,沒有也要設一個,下一步,選上「在完成時打開此任務的高級屬性」,在運行欄後面加上「
-S」引號不要哦。
1、win2000系統內沒有shutdown命令文件,如果在2000中使用,必須
winXP中的shutdown.exe文件(在xp的c盤收索就能找到),到win2k的C:\\WINNT中,win2k才能使用。\\.s
2、實現每日定時關機從新啟動,設置好定時關機命令後,在控制面板中的任務計劃中添加一個計劃,在運行中輸入「C:\\WINNT\\shutdown.exe
-r」在設置密碼處輸入管理員的密碼,在日程處輸入每天運行的時間,那樣就可以達到每天定時重新啟動計算機了。