GetNumberOfConsoleInputEvents 函数

检索控制台输入缓冲区中未读输入记录的数量。

语法

BOOL WINAPI GetNumberOfConsoleInputEvents(
  _In_  HANDLE  hConsoleInput,
  _Out_ LPDWORD lpcNumberOfEvents
);

参数

hConsoleInput [in]
控制台输入缓冲区的句柄。 该句柄必须具有 GENERIC_READ 访问权限。 有关详细信息,请参阅控制台缓冲区安全性和访问权限

lpcNumberOfEvents [out]
指向变量的指针,该变量可接收控制台输入缓冲区中未读输入记录的数量。

返回值

如果该函数成功,则返回值为非零值。

如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError

备注

GetNumberOfConsoleInputEvents 函数报告输入缓冲区中未读输入记录的总数,包括键盘、鼠标和窗口重设大小输入记录。 使用 ReadFileReadConsole 函数的进程只能读取键盘输入。 使用 ReadConsoleInput 函数的进程可以读取所有输入记录类型。

进程可以在其中一个等待函数中指定控制台输入缓冲区句柄,以确定何时存在未读控制台输入。 当输入缓冲区不为空时,将发出控制台输入缓冲区句柄的状态信号。

要在不影响未读记录数量的情况下从控制台输入缓冲区读取输入记录,请使用 PeekConsoleInput 函数。 要丢弃控制台输入缓冲区中的所有未读记录,请使用 FlushConsoleInputBuffer 函数。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
Header ConsoleApi.h (via WinCon.h, include Windows.h)
Kernel32.lib
DLL Kernel32.dll

另请参阅

控制台函数

FlushConsoleInputBuffer

低级控制台输入函数

PeekConsoleInput

ReadConsole

ReadConsoleInput

ReadFile