vb.net系統(tǒng)關(guān)機(jī) vbs代碼關(guān)機(jī)

vb.net WinXP/2000操作系統(tǒng)自動(dòng)關(guān)機(jī)的實(shí)現(xiàn)

Windows

創(chuàng)新互聯(lián)建站科技有限公司專(zhuān)業(yè)互聯(lián)網(wǎng)基礎(chǔ)服務(wù)商,為您提供成都棕樹(shù)電信機(jī)房高防服務(wù)器,成都IDC機(jī)房托管,成都主機(jī)托管等互聯(lián)網(wǎng)服務(wù)。

XP的關(guān)機(jī)是由Shutdown.exe程序來(lái)控制的,位于Windows\System32文件夾中。如果想讓W(xué)indows

2000也實(shí)現(xiàn)同樣的效果,可以把Shutdown.exe復(fù)制到系統(tǒng)目錄下。

比如你的電腦要在22:00關(guān)機(jī),可以選擇“開(kāi)始→運(yùn)行”,輸入“at

22:00

Shutdown

-s”,這樣,到了22點(diǎn)電腦就會(huì)出現(xiàn)“系統(tǒng)關(guān)機(jī)”對(duì)話框,默認(rèn)有30秒鐘的倒計(jì)時(shí)并提示你保存工作。如果你想以倒計(jì)時(shí)的方式關(guān)機(jī),可以輸入“Shutdown.exe

-s

-t

3600”,這里表示60分鐘后自動(dòng)關(guān)機(jī),“3600”代表60分鐘。

設(shè)置好自動(dòng)關(guān)機(jī)后,如果想取消的話,可以在運(yùn)行中輸入“shutdown

-a”。另外輸入“shutdown

-i”,則可以打開(kāi)設(shè)置自動(dòng)關(guān)機(jī)對(duì)話框,對(duì)自動(dòng)關(guān)機(jī)進(jìn)行設(shè)置。

Shutdown.exe的參數(shù),每個(gè)都具有特定的用途,執(zhí)行每一個(gè)都會(huì)產(chǎn)生不同的效果,比如“-s”就表示關(guān)閉本地計(jì)算機(jī),“-a”表示取消關(guān)

機(jī)操作,下面列出了更多參數(shù),大家可以在Shutdown.exe中按需使用。

其他的我也不多說(shuō)了,這樣說(shuō)已經(jīng)很詳細(xì)了,你應(yīng)該能看懂。

如何在編的VB.NET程序使用時(shí)關(guān)閉電腦

有兩種方法,第一種是調(diào)用shutdown.exe

shell("shutdown.exe路徑

-s

-t

0")

'-t是延遲時(shí)間,0表示立刻關(guān)機(jī)

另一種就是使用API了,好像是ExitWindow,你可以去搜索一下其用法。

vb.net2008攔截關(guān)機(jī)或注銷(xiāo)消息

在SystemEvents類(lèi)中 可以 用戶試圖注銷(xiāo)或關(guān)閉系統(tǒng)時(shí)發(fā)生。 (當(dāng)用戶試圖注銷(xiāo)或關(guān)閉系統(tǒng)時(shí)發(fā)生。當(dāng)用戶試圖注銷(xiāo)或關(guān)閉系統(tǒng)時(shí)發(fā)生。) 這個(gè) 事件處理函數(shù)中 可以找到如下方法

Private Shared WM_QUERYENDSESSION As Integer = H11

Private Shared systemShutdown As Boolean = False

Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)

If m.Msg = WM_QUERYENDSESSION Then

'MessageBox.Show("queryendsession: this is a logoff, shutdown, or reboot")

systemShutdown = True

End If

' If this is WM_QUERYENDSESSION, the closing event should be raised in the base WndProc.

MyBase.WndProc(m)

End Sub 'WndProc

Private Sub Form1_Closing(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing

If (systemShutdown) Then

' Reset the variable because the user might cancel the shutdown.

systemShutdown = False

If (System.Windows.Forms.DialogResult.Yes = _

MessageBox.Show("My application", "Do you want to save your work before logging off?", MessageBoxButtons.YesNo)) Then

e.Cancel = True

Else

e.Cancel = False

End If

End If

End Sub

VB.NET 2005編寫(xiě)定時(shí)關(guān)機(jī)程序

最近在網(wǎng)上搜索了一些關(guān)于實(shí)現(xiàn)關(guān)機(jī) 重啟 注銷(xiāo)的文章 發(fā)現(xiàn)大多介紹的是VB NET 用API實(shí)現(xiàn)這些功能 且在XPsp 環(huán)境下無(wú)法正常的關(guān)機(jī)與注銷(xiāo) 而對(duì)于VB NET 的介紹幾乎沒(méi)有 本文章所涉及的知識(shí)點(diǎn)有

用實(shí)現(xiàn)關(guān)機(jī) 重啟 注銷(xiāo)功能 通過(guò)使用textbox與timer控件的結(jié)合編寫(xiě)定時(shí)器功能 為你的程序加上超鏈接

本篇文章具有一定的基礎(chǔ)性和廣泛的實(shí)用性 相信能夠給 初學(xué)者帶來(lái)一定的幫助

本文所使用的編程環(huán)境是Microsoft Visual Studio 首先打開(kāi) Visual Studio 在文件 (File) 菜單上 單擊新建項(xiàng)目 (New Project) 在新建項(xiàng)目 (New Project) 對(duì)話框的模板 (Templates) 窗格中 單擊 Windows 應(yīng)用程序 (Windows Application) 單擊確定 (OK)

具體步驟如下

首先在Form 窗體上添加一個(gè)Label 控件屬性text設(shè)置為:今天: 然后分別添加 個(gè)button控件name分別為button button button 它們的text屬性分別為 關(guān)閉計(jì)算機(jī)(啟動(dòng)定時(shí)器) 注銷(xiāo) 重新啟動(dòng)

現(xiàn)在我們就需要為程序加上一個(gè)定時(shí)器了 這個(gè)定時(shí)器需要與textbox 控件相關(guān)聯(lián) 輸入正確時(shí)間格式后就可以啟動(dòng)定時(shí)功能了 然后我們需要在窗體上添加一個(gè)timer 一個(gè)textbox 控件 和一個(gè)RadioButton 控件 讓它們保留默認(rèn)值不變 其中 TextBox 控件的text屬性設(shè)置為 : : RadioButton 控件text設(shè)置為 指定時(shí)間關(guān)機(jī)|時(shí)間格式 小時(shí): 分鐘: 秒如圖 所示

以上界面工作基本完成現(xiàn)在需要輸入代碼了

雙擊窗體進(jì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 注銷(xiāo)計(jì)算機(jī)Friend Const EWX_SHUTDOWN As Integer = H 關(guān)閉計(jì)算機(jī)Friend Const EWX_REBOOT As Integer = H 重新啟動(dòng)計(jì)算機(jī)Friend Const EWX_FORCE As Integer = H 關(guān)閉所有進(jìn)程 注銷(xiāo)計(jì)算機(jī)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 判斷語(yǔ)句 Dim tp As TokPriv Luid Dim hproc As IntPtr = GetCurrentProcess()  調(diào)用進(jìn)程值 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)) 重新啟動(dòng)計(jì)算機(jī)End Sub

Public Shared Sub PowerOff() DoExitWin((EWX_FORCE Or EWX_POWEROFF)) 關(guān)閉計(jì)算機(jī)End Sub

Public Shared Sub LogoOff() DoExitWin((EWX_FORCE Or EWX_LOGOFF)) 注銷(xiāo)計(jì)算機(jī)End Sub

Dim entTime As Object 保存輸入時(shí)間Dim xianzaiTime As Object 保存實(shí)時(shí)時(shí)間Dim startTime As Object 保存開(kāi)始定時(shí)時(shí)間

注銷(xiāo)button 按鈕輸入code

Private Sub Button _Click(ByVal sender As System Object

ByVal e As System EventArgs) Handles Button ClickLogoOff() 注銷(xiāo)計(jì)算機(jī)End Sub

雙擊重新啟動(dòng)按鈕button 輸入code

Private Sub Button _Click(ByVal sender As System Object

ByVal e As System EventArgs) Handles Button Click

Reboot()

End Sub

雙擊關(guān)閉計(jì)算機(jī)按鈕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ù)判斷輸入的時(shí)間格式MsgBox( 你所輸入的不是時(shí)間格式 ! 錯(cuò)誤 ) ElseentTime = TimeValue(TextBox Text) End If Timer Enabled = True  啟動(dòng)定時(shí)器 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ù)判斷是否到時(shí)間了

End IfEnd If

PowerOff() 關(guān)閉計(jì)算機(jī)End Sub

好了 基本上一個(gè)定時(shí)關(guān)機(jī)程序就完成了 接下來(lái)加一個(gè)超級(jí)鏈接吧!當(dāng)然對(duì)于高手來(lái)說(shuō)可能是廢話 但是對(duì)于新手來(lái)說(shuō)這也是必備的 這個(gè)超級(jí)鏈接當(dāng)然是我們最喜歡的天極網(wǎng)開(kāi)發(fā)頻道了

先創(chuàng)建一個(gè)Label控件吧 把它托到窗體上 將text屬性設(shè)置為天極網(wǎng)開(kāi)發(fā)頻道如圖

接下來(lái)需要輸入代碼了 雙擊窗體Form

進(jìn)入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)開(kāi)發(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 鍵運(yùn)行如圖 所示 選擇相應(yīng)選項(xiàng)后點(diǎn)擊(關(guān)閉計(jì)算機(jī)啟動(dòng)定時(shí)器按鈕)就可以了 現(xiàn)在程序?qū)凑漳闼O(shè)定的時(shí)間而啟動(dòng)關(guān)閉計(jì)算機(jī)選項(xiàng)

lishixinzhi/Article/program/net/201311/12366

vb.net實(shí)現(xiàn)關(guān)機(jī)

這是點(diǎn)擊Option 你可以

用個(gè)msgbox函數(shù) 點(diǎn)擊YES時(shí)候運(yùn)行關(guān)機(jī)代碼即可

Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Integer, ByVal dwReserved As Integer) As Integer 

Const EWX_FORCE As Short = 4

Const EWX_LOGOFF As Short = 0

Const EWX_REBOOT As Short = 2

Const EWX_SHUTDOWN As Short = 1

Dim retval As Integer

' 定義Esc按鍵

Const VK_ESCAPE As Short = H1Bs

Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click

If Option1.Checked Then

' 注銷(xiāo)當(dāng)前用戶

retval = ExitWindowsEx(EWX_FORCE, 0) bitsCN.Com

ElseIf Option2.Checked Then

' 關(guān)閉計(jì)算機(jī)

retval = ExitWindowsEx(EWX_SHUTDOWN, 0)

ElseIf Option3.Checked Then

' 重新啟動(dòng)

retval = ExitWindowsEx(EWX_REBOOT, 0)

End If

End Sub

Private Sub Command2_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command2.Click

Me.Close()

End Sub

' 按Esc鍵時(shí),結(jié)束應(yīng)用程序

Private Sub Form1_KeyPress(ByVal eventSender As System.Object, ByVal eventArgs As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress

Dim KeyAscii As Short = Asc(eventArgs.KeyChar)

If KeyAscii = VK_ESCAPE Then BBS.bitsCN.com網(wǎng)管論壇

Me.Close()

End If

If KeyAscii = 0 Then

eventArgs.Handled = True

End If

End Sub

VB里怎么關(guān)機(jī)

調(diào)用dos命令

shutdown

用法: shutdown [-i | -l | -s | -r | -a] [-f] [-m \\computername] [-t xx] [-c "comment"] [-d up:xx:yy]

沒(méi)有參數(shù) 顯示此消息(與 ? 相同)

-i 顯示 GUI 界面,必須是第一個(gè)選項(xiàng)

-l 注銷(xiāo)(不能與選項(xiàng) -m 一起使用)

-s 關(guān)閉此計(jì)算機(jī)

-r 關(guān)閉并重啟動(dòng)此計(jì)算機(jī)

-a 放棄系統(tǒng)關(guān)機(jī)

-m \\computername 遠(yuǎn)程計(jì)算機(jī)關(guān)機(jī)/重啟動(dòng)/放棄

-t xx 設(shè)置關(guān)閉的超時(shí)為 xx 秒

-c "comment" 關(guān)閉注釋(最大 127 個(gè)字符)

-f 強(qiáng)制運(yùn)行的應(yīng)用程序關(guān)閉而沒(méi)有警告

-d [u][p]:xx:yy 關(guān)閉原因代碼

u 是用戶代碼

p 是一個(gè)計(jì)劃的關(guān)閉代碼

xx 是一個(gè)主要原因代碼(小于 256 的正整數(shù))

yy 是一個(gè)次要原因代碼(小于 65536 的正整數(shù))

分享文章:vb.net系統(tǒng)關(guān)機(jī) vbs代碼關(guān)機(jī)
鏈接分享:http://m.kartarina.com/article14/hgjdde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、移動(dòng)網(wǎng)站建設(shè)微信小程序動(dòng)態(tài)網(wǎng)站、靜態(tài)網(wǎng)站、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

小程序開(kāi)發(fā)
主站蜘蛛池模板: 亚洲Av永久无码精品一区二区| 亚洲Av无码国产情品久久| 亚洲Aⅴ在线无码播放毛片一线天| 亚洲天堂2017无码中文| 亚洲精品一级无码中文字幕 | 国产亚洲精品a在线无码| 亚洲A∨无码一区二区三区| 无码人妻精品一区二区三区9厂| 亚洲午夜国产精品无码| 日韩人妻无码精品无码中文字幕| 无码137片内射在线影院| 极品粉嫩嫩模大尺度无码视频 | 无码熟妇人妻在线视频| 国产成人无码一区二区三区| 国产精品无码一区二区三区免费| 免费A级毛片无码A∨免费| 亚洲av永久无码精品国产精品| av无码a在线观看| 无码h黄肉3d动漫在线观看 | 精品亚洲av无码一区二区柚蜜| 国产色综合久久无码有码| 无码视频一区二区三区| 人妻av中文字幕无码专区| 人妻无码久久一区二区三区免费| 中文国产成人精品久久亚洲精品AⅤ无码精品| 少妇精品无码一区二区三区| 亚洲中文字幕无码一区| 国产aⅴ激情无码久久| 中国无码人妻丰满熟妇啪啪软件| 国产av无码专区亚洲av毛片搜| 人妻在线无码一区二区三区| 中文字幕久久久人妻无码| 亚洲GV天堂无码男同在线观看| 无码av最新无码av专区| 99精品国产在热久久无码| 精品无码av一区二区三区| 无码丰满熟妇juliaann与黑人| 色综合久久久无码网中文| 无码日本精品XXXXXXXXX| 精品无码av无码专区| 日本无码色情三级播放|