คุณควรจะอยากทำบ่อยๆ แต่ก็มีบางครั้งที่จำเป็นต้องใช้ประโยชน์จากการ Restart นี้ การ
ละเมิดระบบความปลอดภัยที่ตรวจจับได้ สามารถต่อต้านกับการ Restart จากตัวโปรแกรม
ของเราได้ การติดตั้งบางแอปพลิเคชั่น และกระบวนการเซตอัปต้องการให้มีการ Restart
เพื่อ Update Path ปัจจุบันและการกำหนด Registry ก่อนคุณจะเริ่มทดสอบโค้ดนี้ ขอให้แน่ใจว่าได้
บันทึกไฟล์ต่างๆ ที่ได้เปิดไว้อยู่แล้ว รวมถึงโปรเจ็กต์นี้เองด้วย

เพื่อที่จะทดลองตัวอย่างนี้ ให้เพิ่ม่คอมมานด์บัตทอนชื่อ cmdRestart ไว้บนฟอร์ม
หนึ่งและเพิ่มโค้ดตามข้างล่างนี้ บันทึกฟอร์ม จากนั้นรัน แล้วคลิกบนคอมมานด์บัตทอนนี้

Option Explicit

Const EWX_SHUTDOWN = 1
Const EWX_REBOOT = 2
Const EWX_LOGOFF = 0
Const EWX_FORCE = 4

Private Declare Function ExitWindowsEX Lib "user32" _
(ByVal uFlags As Long, _
ByVal dwReserved As Long) _
As Long

Private Sub cmdRestart_Click()
'คุณสามารถเปลี่ยน EWX_LOGOFF เป็น EWX_อื่นๆได้
ExitWindowsEx EWX_LOGOFF,0
End Sub

เมื่อได้คลิกบน Command Button แล้ว จะไม่มีสิ่งใดตอบกลับมาอีก
ระบบจะมีการปิดหรือ Shutdown หรือ Restart


อ้างอิงจาก http://www.siamdev.net