还有其他类型的控制台事件吗?

时间:2019-01-26 13:54:59

标签: c winapi events console

我知道在C WIN32中有以下控制台事件:

  • CTRL_C_EVENT-当用户按下CTRL + C或按下CTRL + C时发生 由GenerateConsoleCtrlEvent API发送。

  • CTRL_BREAK_EVENT-在用户按下CTRL + BREAK或 它由GenerateConsoleCtrlEvent API发送。

  • CTRL_CLOSE_EVENT-尝试关闭控制台时发生, 当系统向所有关联的进程发送关闭信号时 使用给定的控制台。

  • CTRL_LOGOFF_EVENT-在用户注销时发生。一个不能 但是,确定哪个用户正在注销。

  • CTRL_SHUTDOWN_EVENT-在关闭系统时发生,并且 通常发送到服务。

还有其他类型的console-events吗?
我需要将console-event发送到一经管理的服务器,导致服务器重新读取配置文件。事件CTRL + C用于关闭服务器。

To do this I used the CTRL + BREAK event, but unfortunately I still could not understand why, it gives me problems with the wsaDuplicateSocket function (error 10024).

1 个答案:

答案 0 :(得分:1)

现在的答案是否定的,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

仅此而已。