PEMROGRAMAN API [ExitWindowsEx]
•
Adalah API call yang berfungsi untuk melakukan
proses logoff, restart ataupun proses shutdown
•
Windows NT 3.1 atau Windows 95 ke atas
•
Disimpan dalam user32.dll
DEKLARASI
Declare Function ExitWindowsEx Lib
"user32" Alias "ExitWindowsEx"
(
ByVal
uFlags As Long,
ByVal
dwReserved As Long
) As Long
PENJELASAN PARAMETER
•
uFlags
–
Menentukan tipe dari shutdown
–
Macamnya antara lain adalah
•
EWX_FORCE
•
EWX_LOGOFF
•
EWX_POWEROFF
•
EWX_REBOOT
•
EWX_SHUTDOWN
uFlags:
•
EWX_FORCE
–
Mematikan proses secara paksa.
–
Ketika dipakai, Windows tidak akan mengirim
message WM_QUERYENDSESSION dan WM_ENDSESSION ke aplikasi yang sedang berjalan
dalam system
–
Kemungkinan data bisa hilang/rusak
–
Gunakan hanya saat emergency
•
EWX_LOGOFF
–
Mematikan semua proses yang sedang berjalan
–
Kemudian me-logoff-user
•
EWX_POWEROFF
–
Men-shut down system lalu mematikan komputer
(power off)
–
System harus support fitur “power off”
•
Untuk Windows NT: yang memanggil harus mempunyai
SE_SHUTDOWN_NAME privilege.
•
Untuk Windows 95: tidak membutuhkan security
privilege
•
EWX_REBOOT
–
Men-shut down system lalu mematikan komputer
(power off) dan menghidupkannya kembali (restart)
–
System harus support fitur “power off”
•
Untuk Windows NT: yang memanggil harus mempunyai
SE_SHUTDOWN_NAME privilege.
•
Untuk Windows 95: tidak membutuhkan security
privilege
•
EWX_SHUTDOWN
–
Men-shut down system tanpa mematikan komputer
(power off)
–
System harus support fitur “power off”
•
Untuk Windows NT: yang memanggil harus mempunyai
SE_SHUTDOWN_NAME privilege.
•
Untuk Windows 95: tidak membutuhkan security
privilege
PENJELASAN PARAMETER
•
dwReserved
–
Parameter ini tidak dipakai
–
reserved
RETURN VALUE
•
Bila function berhasil à return value berupa nilai
yang bukan nol
•
Bila gagal Ã
return value = 0
–
Untuk mendapatkan informasi tambahan dari error
tersebut, gunakan GetLastError.
CONTOH PENGGUNAAN
Const EWX_LOGOFF = 0
Const EWX_SHUTDOWN = 1
Const EWX_REBOOT = 2
Const EWX_FORCE = 4
Private Declare Function
ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As
Long) As Long
Private Sub Form_Load()
msg = MsgBox("This program is
going to reboot your computer. Press OK to continue or Cancel to stop.",
vbCritical + vbOKCancel + 256, App.Title)
If msg = vbCancel Then End
'reboot the computer
ret& = ExitWindowsEx(EWX_FORCE Or EWX_REBOOT, 0)
End Sub
PENJELASAN
•
DEKLARASI
Const EWX_LOGOFF = 0
Const EWX_SHUTDOWN = 1
Const EWX_REBOOT = 2
Const EWX_FORCE = 4
Private Sub Form_Load()
msg = MsgBox("This program is
going to reboot your computer. Press OK to continue or Cancel to stop.",
vbCritical + vbOKCancel + 256, App.Title)
If msg = vbCancel Then End
'reboot the computer
ret& = ExitWindowsEx(EWX_FORCE Or EWX_REBOOT, 0)
End Sub
RUNNING PROGRAM
No comments:
Post a Comment
silahkan membaca dan berkomentar