Windowsの強制終了(Win95/98)             <TOP>


Windowsの『ログオフ』『シャットダウン』『再起動』を実行します。

ExitWindowsEx Windowsの強制終了

 

Windows95およびWindows98でのみ実行できます。

参照

Windowsの終了・再起動・ログオフ(WindowsNT以降)

 

'================================================================
'= Windows(Windows95/Windows98)の終了
'=   (ExitWindowsEx2.bas)
'================================================================
#include "Windows.bi"

' Windowsを強制終了
Declare Function Api_ExitWindowsEx& Lib "user32" Alias "ExitWindowsEx" (ByVal uFlags&, ByVal dwReserved&)

#define EWX_FORCE 4                     '強制
#define EWX_LOGOFF 0                    'ログオフ
#define EWX_POWEROFF 8                  'パワーオフ
#define EWX_REBOOT 2                    'リブート
#define EWX_SHUTDOWN 1                  'シャットダウン

Var Shared Button(2) As Object

For i = 0 To 2
    Button(i).Attach GetDlgItem("Button" & Trim$(Str$(i + 1))) : Button(i).SetFontSize 14
Next i

'================================================================
'= ログオフ
'================================================================
Declare Sub Button1_on edecl ()
Sub Button1_on()
    Var Ret As Long

    Ret = Api_ExitWindowsEx(EWX_LOGOFF, 0)
End Sub

'================================================================
'= シャットダウン
'================================================================
Declare Sub Button2_on edecl ()
Sub Button2_on()
    Var Ret As Long

    Ret = Api_ExitWindowsEx(EWX_SHUTDOWN, 0)
End Sub

'================================================================
'= リブート
'================================================================
Declare Sub Button3_on edecl ()
Sub Button3_on()
    Var Ret As Long

    Ret = Api_ExitWindowsEx(EWX_REBOOT, 0)
End Sub

'================================================================
'=
'================================================================
While 1
    WaitEvent
Wend
Stop
End