Bagikan melalui


pesan WM_ENDSESSION

Pesan WM_ENDSESSION dikirim ke aplikasi setelah sistem memproses hasil pesan WM_QUERYENDSESSION . Pesan WM_ENDSESSION menginformasikan aplikasi apakah sesi berakhir.

Jendela menerima pesan ini melalui fungsi WindowProc-nya .

LRESULT CALLBACK WindowProc( 
  HWND hwnd,      // handle to window 
  UINT uMsg,      // message identifier 
  WPARAM wParam,  // end-session option 
  LPARAM lParam   // logoff option
);

Parameter

hwnd

Handel ke jendela.

uMsg

Pengidentifikasi WM_ENDSESSION .

wParam

Jika sesi sedang berakhir, parameter ini ADALAH TRUE; sesi dapat berakhir kapan saja setelah semua aplikasi kembali dari pemrosesan pesan ini. Jika tidak, itu FALSE.

lParam

Parameter ini bisa menjadi satu atau beberapa nilai berikut. Jika parameter ini adalah 0, sistem akan dimatikan atau dimulai ulang (tidak dimungkinkan untuk menentukan peristiwa mana yang terjadi).

Nilai Makna
ENDSESSION_CLOSEAPP
0x1
Jika wParamTRUE, aplikasi harus dimatikan. Data apa pun harus disimpan secara otomatis tanpa meminta pengguna (untuk informasi selengkapnya, lihat Keterangan). Restart Manager mengirimkan pesan ini ketika aplikasi menggunakan file yang perlu diganti, ketika harus melayani sistem, atau ketika sumber daya sistem habis. Aplikasi akan dimulai ulang jika telah terdaftar untuk memulai ulang menggunakan fungsi RegisterApplicationRestart . Untuk informasi selengkapnya, lihat Panduan untuk Aplikasi.
Jika wParamFALSE, aplikasi tidak boleh dimatikan.
ENDSESSION_CRITICAL
0x40000000
Aplikasi dipaksa untuk dimatikan.
ENDSESSION_LOGOFF
0x80000000
Pengguna sedang keluar. Untuk informasi selengkapnya, lihat Pengelogan Nonaktif.

 

Perhatikan bahwa parameter ini sedikit masker. Untuk menguji nilai ini, gunakan operasi yang sedikit bijaksana; jangan menguji kesetaraan.

Nilai kembali

Jika aplikasi memproses pesan ini, aplikasi harus mengembalikan nol.

Keterangan

Aplikasi yang memiliki data yang belum disimpan dapat menyimpan data ke lokasi sementara dan memulihkannya saat aplikasi dimulai lagi. Disarankan agar aplikasi sering menyimpan data dan statusnya; misalnya, secara otomatis menyimpan data antara operasi penyimpanan yang dimulai oleh pengguna untuk mengurangi jumlah data yang akan disimpan saat dimatikan.

Aplikasi tidak perlu memanggil fungsi DestroyWindow atau PostQuitMessage saat sesi berakhir.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung
Windows XP [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung
Windows Server 2003 [aplikasi desktop | Aplikasi UWP]
Header
WinUser.h (termasuk Windows.h)

Lihat juga

Pengelogan Nonaktif

Mematikan

DestroyWindow

PostQuitMessage

SetProcessShutdownParameters

WM_QUERYENDSESSION