Существуют ли другие типы консольных событий? - PullRequest
0 голосов
/ 26 января 2019

Я знаю, что в C WIN32 есть следующие консольные события:

  • CTRL_C_EVENT - происходит, когда пользователь нажимает CTRL + C, или когда он отправлено API GenerateConsoleCtrlEvent.

  • CTRL_BREAK_EVENT - происходит, когда пользователь нажимает CTRL + BREAK, или когда он отправляется API-интерфейсом GenerateConsoleCtrlEvent.

  • CTRL_CLOSE_EVENT - происходит при попытке закрыть консоль, когда система отправляет сигнал закрытия всем связанным процессам с заданной консолью.

  • CTRL_LOGOFF_EVENT - происходит, когда пользователь выходит из системы. Невозможно однако определите, какой пользователь выходит из системы.

  • CTRL_SHUTDOWN_EVENT - происходит, когда система выключается, и обычно отправляется в сервисы.

Существуют ли другие типы console-events?
Мне нужно отправить console-event на сервер, который когда-то управлял, заставляет сервер перечитать файл конфигурации. Событие CTRL + C используется для закрытия сервера.

Для этого я использовал событие CTRL + BREAK, но, к сожалению, я все еще не мог понять, почему, это вызывает проблемы с функцией wsaDuplicateSocket (ошибка 10024).

1 Ответ

0 голосов
/ 28 января 2019

Ответ теперь - нет, в заголовочном файле consoleapi.h есть некоторые определения:

#define CTRL_C_EVENT        0
#define CTRL_BREAK_EVENT    1
#define CTRL_CLOSE_EVENT    2
// 3 is reserved!
// 4 is reserved!
#define CTRL_LOGOFF_EVENT   5
#define CTRL_SHUTDOWN_EVENT 6

больше ничего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...