作者noar (小安)
看板Visual_Basic
標題Re: [.NET] 如何讓系統重開機
時間Tue Jun 2 10:04:41 2009
※ 引述《noar (小安)》之銘言:
請輸入專案類型(網站專案或者應用程式專案):vb 2003
目前在撰寫CE 4.1上的程式
可是遇到一個問題就是讓系統重新啟動的問題
因為有些設定要重新啟動才會生效
所以想問問看有沒有利用程式就可以讓CE重新啟動的方法
----感謝kenimai
我把我查到的程式碼貼出來吧
Private Declare Function KernelIoControl Lib "coredll.dll" (ByVal
dwIoControlCode As Integer, ByVal lpInBuf As IntPtr, ByVal nInBufSize As
Integer, ByVal lpOutBuf As IntPtr, ByVal nOutBufSize As Integer, ByRef
lpBytesReturned As Integer) As Integer
Private Function CTL_CODE(ByVal DeviceType As Integer, ByVal Func As
Integer, ByVal Method As Integer, ByVal Access As Integer) As Integer
Return (DeviceType << 16) Or (Access << 14) Or (Func << 2) Or Method
End Function
Private Function ResetPocketPC() As Integer
Const FILE_DEVICE_HAL As Integer = &H101
Const METHOD_BUFFERED As Integer = 0
Const FILE_ANY_ACCESS As Integer = 0
Dim bytesReturned As Integer = 0
Dim IOCTL_HAL_REBOOT As Integer
IOCTL_HAL_REBOOT = CTL_CODE(FILE_DEVICE_HAL, 15, METHOD_BUFFERED,
FILE_ANY_ACCESS)
Return KernelIoControl(IOCTL_HAL_REBOOT, IntPtr.Zero, 0, IntPtr.Zero,
0, bytesReturned)
End Function
'reset 按鈕
Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
ResetPocketPC()
End Sub
本文来自CSDN博客
http://blog.csdn.net/aawolf/archive/2008/02/07/2086199.aspx
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.221.131.34
→ chinoyan:MSGBOX "警告!!! 請在十秒內重新啓動CE!!!","十秒後爆炸" 06/01 19:39
推 fumizuki:winxp可以執行命令 "shutdown -r -t 0" 其他就不確定了 06/01 20:46
推 kenimai:Google "CoreDll.dll" 這個東西~ 06/02 02:03
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.221.131.34
※ 編輯: noar 來自: 61.221.131.34 (06/02 10:24)