Windows
發(fā)展壯大離不開廣大客戶長期以來的信賴與支持,我們將始終秉承“誠信為本、服務至上”的服務理念,堅持“二合一”的優(yōu)良服務模式,真誠服務每家企業(yè),認真做好每個細節(jié),不斷完善自我,成就企業(yè),實現(xiàn)共贏。行業(yè)涉及三維植被網(wǎng)等,在網(wǎng)站建設公司、成都全網(wǎng)營銷、WAP手機網(wǎng)站、VI設計、軟件開發(fā)等項目上具有豐富的設計經(jīng)驗。
XP的關機是由Shutdown.exe程序來控制的,位于Windows\System32文件夾中。如果想讓Windows
2000也實現(xiàn)同樣的效果,可以把Shutdown.exe復制到系統(tǒng)目錄下。
比如你的電腦要在22:00關機,可以選擇“開始→運行”,輸入“at
22:00
Shutdown
-s”,這樣,到了22點電腦就會出現(xiàn)“系統(tǒng)關機”對話框,默認有30秒鐘的倒計時并提示你保存工作。如果你想以倒計時的方式關機,可以輸入“Shutdown.exe
-s
-t
3600”,這里表示60分鐘后自動關機,“3600”代表60分鐘。
設置好自動關機后,如果想取消的話,可以在運行中輸入“shutdown
-a”。另外輸入“shutdown
-i”,則可以打開設置自動關機對話框,對自動關機進行設置。
Shutdown.exe的參數(shù),每個都具有特定的用途,執(zhí)行每一個都會產(chǎn)生不同的效果,比如“-s”就表示關閉本地計算機,“-a”表示取消關
機操作,下面列出了更多參數(shù),大家可以在Shutdown.exe中按需使用。
其他的我也不多說了,這樣說已經(jīng)很詳細了,你應該能看懂。
最近在網(wǎng)上搜索了一些關于實現(xiàn)關機 重啟 注銷的文章 發(fā)現(xiàn)大多介紹的是VB NET 用API實現(xiàn)這些功能 且在XPsp 環(huán)境下無法正常的關機與注銷 而對于VB NET 的介紹幾乎沒有 本文章所涉及的知識點有
用實現(xiàn)關機 重啟 注銷功能 通過使用textbox與timer控件的結(jié)合編寫定時器功能 為你的程序加上超鏈接
本篇文章具有一定的基礎性和廣泛的實用性 相信能夠給 初學者帶來一定的幫助
本文所使用的編程環(huán)境是Microsoft Visual Studio 首先打開 Visual Studio 在文件 (File) 菜單上 單擊新建項目 (New Project) 在新建項目 (New Project) 對話框的模板 (Templates) 窗格中 單擊 Windows 應用程序 (Windows Application) 單擊確定 (OK)
具體步驟如下
首先在Form 窗體上添加一個Label 控件屬性text設置為:今天: 然后分別添加 個button控件name分別為button button button 它們的text屬性分別為 關閉計算機(啟動定時器) 注銷 重新啟動
圖
現(xiàn)在我們就需要為程序加上一個定時器了 這個定時器需要與textbox 控件相關聯(lián) 輸入正確時間格式后就可以啟動定時功能了 然后我們需要在窗體上添加一個timer 一個textbox 控件 和一個RadioButton 控件 讓它們保留默認值不變 其中 TextBox 控件的text屬性設置為 : : RadioButton 控件text設置為 指定時間關機|時間格式 小時: 分鐘: 秒如圖 所示
圖
以上界面工作基本完成現(xiàn)在需要輸入代碼了
雙擊窗體進入常規(guī) 聲明Public Class Form 事件中
CODE
Imports System Runtime InteropServicesImports Microsoft VisualBasicPublic Class Form _ 調(diào)用系統(tǒng)參數(shù)Friend Shared Function GetCurrentProcess() As IntPtrEnd Function
_Friend Shared Function OpenProcessToken(ByVal h As IntPtr
ByVal acc As Integer ByRef phtok As IntPtr) As BooleanEnd Function
_Friend Shared Function LookupPrivilegeValue(ByVal host As String
ByVal name As String ByRef pluid As Long) As BooleanEnd Function
_Friend Shared Function AdjustTokenPrivileges(ByVal htok As IntPtr
ByVal disall As Boolean ByRef newst As TokPriv Luid
ByVal len As Integer ByVal prev As IntPtr
ByVal relen As IntPtr) As BooleanEnd Function
_Friend Shared Function ExitWindowsEx(ByVal flg As Integer
ByVal rea As Integer) As BooleanEnd Function
Friend Const SE_PRIVILEGE_ENABLED As Integer = H Friend Const TOKEN_QUERY As Integer = H Friend Const TOKEN_ADJUST_PRIVILEGES As Integer = H Friend Const SE_SHUTDOWN_NAME As String = SeShutdownPrivilege Friend Const EWX_LOGOFF As Integer = H 注銷計算機Friend Const EWX_SHUTDOWN As Integer = H 關閉計算機Friend Const EWX_REBOOT As Integer = H 重新啟動計算機Friend Const EWX_FORCE As Integer = H 關閉所有進程 注銷計算機Friend Const EWX_POWEROFF As Integer = H Friend Const EWX_FORCEIFHUNG As Integer = H
_ 引用參數(shù) Friend Structure TokPriv Luid Public Count As Integer Public Luid As Long Public Attr As IntegerEnd Structure
Private Shared Sub DoExitWin(ByVal flg As Integer) Dim xc As Boolean 判斷語句 Dim tp As TokPriv Luid Dim hproc As IntPtr = GetCurrentProcess() 調(diào)用進程值 Dim htok As IntPtr = IntPtr Zero xc = OpenProcessToken(hproc TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY htok) tp Count = tp Luid = tp Attr = SE_PRIVILEGE_ENABLED xc = LookupPrivilegeValue(Nothing SE_SHUTDOWN_NAME tp Luid) xc = AdjustTokenPrivileges(htok False tp IntPtr Zero IntPtr Zero) xc = ExitWindowsEx(flg )End Sub
Public Shared Sub Reboot() DoExitWin((EWX_FORCE Or EWX_REBOOT)) 重新啟動計算機End Sub
Public Shared Sub PowerOff() DoExitWin((EWX_FORCE Or EWX_POWEROFF)) 關閉計算機End Sub
Public Shared Sub LogoOff() DoExitWin((EWX_FORCE Or EWX_LOGOFF)) 注銷計算機End Sub
Dim entTime As Object 保存輸入時間Dim xianzaiTime As Object 保存實時時間Dim startTime As Object 保存開始定時時間
注銷button 按鈕輸入code
Private Sub Button _Click(ByVal sender As System Object
ByVal e As System EventArgs) Handles Button ClickLogoOff() 注銷計算機End Sub
雙擊重新啟動按鈕button 輸入code
Private Sub Button _Click(ByVal sender As System Object
ByVal e As System EventArgs) Handles Button Click
Reboot()
End Sub
雙擊關閉計算機按鈕button 輸入code
Private Sub Button _Click(ByVal sender As System Object
ByVal e As System EventArgs) Handles Button Click startTime = TimeOfDay If Not IsDate(TextBox Text) Then 用IsData函數(shù)判斷輸入的時間格式MsgBox( 你所輸入的不是時間格式 ! 錯誤 ) ElseentTime = TimeValue(TextBox Text) End If Timer Enabled = True 啟動定時器 Me WindowState = System Windows Forms FormWindowState Minimized 最小化窗體
End Sub
如圖
圖
雙擊timer 控件如圖
圖
輸入代碼
Private Sub Timer _Tick(ByVal sender As System Object
ByVal e As System EventArgs) Handles Timer Tick xianzaiTime = TimeOfDay If RadioButton Checked Then
If DateDiff(Microsoft VisualBasic DateInterval Second
xianzaiTime entTime) Then 用DateDiff函數(shù)判斷是否到時間了
End IfEnd If
PowerOff() 關閉計算機End Sub
好了 基本上一個定時關機程序就完成了 接下來加一個超級鏈接吧!當然對于高手來說可能是廢話 但是對于新手來說這也是必備的 這個超級鏈接當然是我們最喜歡的天極網(wǎng)開發(fā)頻道了
先創(chuàng)建一個Label控件吧 把它托到窗體上 將text屬性設置為天極網(wǎng)開發(fā)頻道如圖
圖
接下來需要輸入代碼了 雙擊窗體Form
進入Public Class Form 事件
代碼
Private Declare Function ShellExecute Lib shell dll
Alias ShellExecuteA (ByVal hwngnd As Integer
ByVal lpOperation As String ByVal lpFile As String
ByVal lpParameters As String ByVal lpDirectory As String
ByVal nShowCmd As Integer) As Integer
如圖
圖
雙擊剛才添加的label屬性text:(天極網(wǎng)開發(fā)頻道)中輸入以下代碼
Private Sub Label _Click(ByVal sender As System Object
ByVal e As System EventArgs) Handles Label ClickShellExecute( open CStr( ) CStr( ) )
End SubEnd Class
OK!全部搞定 按F 鍵運行如圖 所示 選擇相應選項后點擊(關閉計算機啟動定時器按鈕)就可以了 現(xiàn)在程序?qū)凑漳闼O定的時間而啟動關閉計算機選項
lishixinzhi/Article/program/net/201311/12366
有兩種方法,第一種是調(diào)用shutdown.exe
shell("shutdown.exe路徑
-s
-t
0")
'-t是延遲時間,0表示立刻關機
另一種就是使用API了,好像是ExitWindow,你可以去搜索一下其用法。
網(wǎng)頁題目:vb.net關機代碼 vbs關機代碼
本文URL:http://jinyejixie.com/article16/ddoghdg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供手機網(wǎng)站建設、品牌網(wǎng)站建設、搜索引擎優(yōu)化、電子商務、網(wǎng)站策劃、網(wǎng)站維護
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)