Bagikan melalui


Fungsi GenerateConsoleCtrlEvent

Mengirim sinyal tertentu ke grup proses konsol yang berbagi konsol yang terkait dengan proses panggilan.

Sintaks

BOOL WINAPI GenerateConsoleCtrlEvent(
  _In_ DWORD dwCtrlEvent,
  _In_ DWORD dwProcessGroupId
);

Parameter

dwCtrlEvent [in]
Jenis sinyal yang akan dihasilkan. Parameter ini bisa menjadi salah satu nilai berikut.

Value Makna
CTRL_C_EVENT 0 Menghasilkan sinyal CTRL+C. Sinyal ini tidak dapat dibatasi pada grup proses tertentu. Jika dwProcessGroupId bukan nol, fungsi ini akan berhasil, tetapi sinyal CTRL+C tidak akan diterima oleh proses dalam grup proses yang ditentukan.
CTRL_BREAK_EVENT 1 Menghasilkan sinyal CTRL+BREAK.

dwProcessGroupId [in]
Pengidentifikasi grup proses untuk menerima sinyal. Grup proses dibuat saat bendera CREATE_NEW_PROCESS_GROUP ditentukan dalam panggilan ke fungsi CreateProcess. Pengidentifikasi proses proses baru juga merupakan pengidentifikasi grup proses dari grup proses baru. Grup proses mencakup semua proses yang merupakan keturunan dari proses akar. Hanya proses dalam grup yang berbagi konsol yang sama dengan proses panggilan yang menerima sinyal. Dengan kata lain, jika proses dalam grup membuat konsol baru, proses tersebut tidak menerima sinyal, atau turunannya.

Jika parameter ini nol, sinyal dihasilkan di semua proses yang berbagi konsol proses panggilan.

Nilai hasil

Jika fungsi berhasil, nilai yang dikembalikan bukan nol.

Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

GenerateConsoleCtrlEvent menyebabkan fungsi handler kontrol proses dalam grup target dipanggil. Semua proses konsol memiliki fungsi handler default yang memanggil fungsi ExitProcess. Proses konsol dapat menggunakan fungsi SetConsoleCtrlHandler untuk menginstal atau menghapus fungsi handler lainnya.

SetConsoleCtrlHandler juga dapat mengaktifkan atribut yang dapat diwariskan yang menyebabkan proses panggilan mengabaikan sinyal CTRL+C. Jika GenerateConsoleCtrlEvent mengirim sinyal CTRL+C ke proses di mana atribut ini diaktifkan, fungsi handler untuk proses tersebut tidak dipanggil. Sinyal CTRL+BREAK selalu menyebabkan fungsi handler dipanggil.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Header ConsoleApi2.h (melalui WinCon.h, termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Baca juga

Penangan Kontrol Konsol

Fungsi Konsol

CreateProcess

ExitProcess

SetConsoleCtrlHandler