Bagikan melalui


Matikan Perubahan untuk Windows Vista

Tabel berikut ini meringkas perbedaan antara pematian pada Windows Vista dan Windows XP.

Fitur Windows XP Windows Vista
Memblokir pematian Aplikasi dapat menunda merespons WM_QUERYENDSESSION selama 5 detik, maka sistem memungkinkan pengguna untuk mengakhiri aplikasi. Aplikasi yang mengembalikan TRUE sebagai respons terhadap WM_QUERYENDSESSION dapat menunda merespons WM_ENDSESSION selama 5 detik, maka sistem memungkinkan pengguna untuk mengakhiri aplikasi. Aplikasi dapat menunda merespons WM_QUERYENDSESSION selama 5 detik, maka sistem memungkinkan pengguna untuk melanjutkan atau membatalkan pematian. Aplikasi yang mengembalikan TRUE sebagai respons terhadap WM_QUERYENDSESSION dapat menunda merespons WM_ENDSESSION selama 5 detik, maka sistem memungkinkan pengguna untuk melanjutkan atau membatalkan penonaktifan.
Membatalkan pematian Jika aplikasi mengembalikan FALSE sebagai respons terhadap WM_QUERYENDSESSION, pematian dibatalkan dalam banyak kasus. Namun, tidak ada UI yang ditampilkan, sehingga pengguna mungkin tidak menyadari bahwa pematian telah dibatalkan. Jika aplikasi mengembalikan FALSE sebagai respons terhadap WM_QUERYENDSESSION, aplikasi masih muncul di antarmuka pengguna matikan. Perhatikan bahwa sistem tidak mengizinkan aplikasi konsol atau aplikasi tanpa jendela yang terlihat untuk membatalkan pematian. Aplikasi ini secara otomatis dihentikan jika tidak merespons WM_QUERYENDSESSION atau WM_ENDSESSION dalam waktu 5 detik atau jika mereka mengembalikan FALSE sebagai respons terhadap WM_QUERYENDSESSION.
Mematikan antarmuka pengguna Sistem menampilkan kotak dialog untuk setiap aplikasi yang memblokir pematian. Jika pengguna mengklik tombol Akhiri Sekarang , aplikasi akan dihentikan. Jika pengguna mengklik tombol Batal, matikan dibatalkan dan aplikasi terus berjalan. Sistem menampilkan UI layar penuh yang mengidentifikasi semua aplikasi yang memblokir pematian dan alasannya untuk melakukannya (jika mereka telah mendaftarkan alasan menggunakan ShutdownBlockReasonCreate).

 

Praktik Terbaik

  • Aplikasi tidak boleh memblokir pematian. Tanggapi WM_QUERYENDSESSION secepat mungkin dan tunda aktivitas pembersihan hingga memproses pesan WM_ENDSESSION .
  • Aplikasi yang harus memblokir pematian harus menggunakan fungsi ShutdownBlockReasonCreate baru untuk mendaftarkan string yang menjelaskan alasannya kepada pengguna. Pengguna dapat memutuskan apakah akan melanjutkan atau membatalkan penonaktifan.
  • Aplikasi tidak dapat mengandalkan mampu memblokir pematian.