VB-Homepage Tipp 014

PC-Neustart

Manchmal kann es notwendig sein, den PC neu zu starten.
(Einstellungen geändert o.ä.)
Dann ist es möglich, mit nachfolgender Prozedur diesen Systemneustart auszulösen. Öffnen Sie dafür ein neues Projekt mit einer Form und tragen Sie nachfolgendes ein.

General/Declarations
16Bit
Declare Function ExitWindows Lib "User" (ByVal dwReturnCode As Long, ByVal wReserved As Integer) As Integer
#32Bit
#Declare Function ExitWindows Lib "user32" Alias "ExitWindows" (ByVal dwReserved As Long, ByVal uReturnCode As Long) As Long
#Const EWX_FORCE = 4
#Const EWX_LOGOFF = 0
#Const EWX_REBOOT = 2
#Const EWX_SHUTDOWN = 1
#Nutzen Sie 32Bit, dann müssen Sie die zu übergebene Konstante ändern!

General/Neustart 'wird durch das eintragen nachfolgender Befehle erzeugt
Function Neustart () As Integer
Dim i As Integer
Dim EW_REBOOTSYSTEM As Long
EW_REBOOTSYSTEM = &H43
i = ExitWindows(EW_REBOOTSYSTEM, 0)
End Function

Fügen Sie nun ein Commandbutton ein, und weisen Sie im folgende Funktion zu.
Vor dem Neustart erfolgt hier noch eine Sicherheitsabfrage.
Sub Command1_Click ()
Dim x As Integer

If MsgBox("Sie haben den Befehl zum PC-Neustart gewählt !" & Chr$(13) & Chr$(10) & "Wollen Sie dies jetzt ausführen", 36, "PC Neustart?") = 6 Then
   x = Neusstart()
   If Not x Then
       MsgBox "Ein Programm verweigert das Beenden", 48, "Da geht was nicht"
   End If
End If

End Sub

'Um das Programm zu beenden, sollten Sie noch einen zweiten Commandbutton 'einfügen. Diesem weisen Sie unter Command2/Click nur den Befehl "Unload me" 'zu. Bitte speichern Sie erst Ihr Projekt, bevor Sie es testen.


Tipp-Download

Quelle :

Zurück zur Übersichtsseite