GenerateConsoleCtrlEvent-Funktion

Sendet ein angegebenes Signal an eine Konsolenprozessgruppe, die die dem aufrufenden Prozess zugeordnete Konsole gemeinsam verwendet.

Syntax

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

Parameter

dwCtrlEvent [in]
Der Typ des zu generierenden Signals. Dieser Parameter kann einen der folgenden Werte annehmen.

Wert Bedeutung
CTRL_C_EVENT 0 Generiert ein STRG+C-Signal. Dieses Signal kann nicht auf eine bestimmte Prozessgruppe beschränkt werden. Wenn dwProcessGroupId ungleich 0 (null) ist, ist diese Funktion erfolgreich, aber das STRG+C-Signal wird nicht von Prozessen innerhalb der angegebenen Prozessgruppe empfangen.
CTRL_BREAK_EVENT 1 Generiert ein STRG+BREAK-Signal.

dwProcessGroupId [in]
Der Bezeichner der Prozessgruppe, die das Signal empfangen soll. Eine Prozessgruppe wird erstellt, wenn das CREATE_NEW_PROCESS_GROUP-Flag in einem Aufruf der CreateProcess-Funktion angegeben wird. Der Prozessbezeichner des neuen Prozesses ist auch der Prozessgruppenbezeichner einer neuen Prozessgruppe. Die Prozessgruppe enthält alle Prozesse, die Nachfolger des Stammprozesses sind. Nur die Prozesse in der Gruppe, die dieselbe Konsole wie der aufrufende Prozess verwenden, empfangen das Signal. Anders ausgedrückt: Wenn ein Prozess in der Gruppe eine neue Konsole erstellt, empfängt dieser Prozess weder das Signal noch seine Nachfolger.

Wenn dieser Parameter 0 (null) ist, wird das Signal in allen Prozessen generiert, die die Konsole des aufrufenden Prozesses gemeinsam nutzen.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Bemerkungen

GenerateConsoleCtrlEvent bewirkt, dass die Steuerungshandlerfunktionen von Prozessen in der Zielgruppe aufgerufen werden. Alle Konsolenprozesse verfügen über eine Standardhandlerfunktion, die die ExitProcess-Funktion aufruft. Ein Konsolenprozess kann die SetConsoleCtrlHandler-Funktion verwenden, um andere Handlerfunktionen zu installieren oder zu entfernen.

SetConsoleCtrlHandler kann auch ein vererbbares Attribut aktivieren, das bewirkt, dass der aufrufende Prozess STRG+C-Signale ignoriert. Wenn GenerateConsoleCtrlEvent ein STRG+C-Signal an einen Prozess sendet, für den dieses Attribut aktiviert ist, werden die Handlerfunktionen für diesen Prozess nicht aufgerufen. STRG+BREAK-Signale führen immer dazu, dass die Handlerfunktionen aufgerufen werden.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Header ConsoleApi2.h (über WinCon.h, include Windows.h)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

Konsolen-Bearbeitungssteuerelemente

Konsolenfunktionen

CreateProcess

ExitProcess

SetConsoleCtrlHandler