Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Načte data ze vstupní vyrovnávací paměti konzoly a odebere je z vyrovnávací paměti s konfigurovatelným chováním.
Syntaxe
BOOL WINAPI ReadConsoleInputEx(
_In_ HANDLE hConsoleInput,
_Out_ PINPUT_RECORD lpBuffer,
_In_ DWORD nLength,
_Out_ LPDWORD lpNumberOfEventsRead,
_In_ USHORT wFlags
);
Parametry
hConsoleInput [in]
Popisovač vstupního vyrovnávacího bufferu konzoly. Popisovač musí mít přístupové právo na GENERIC_READ. Další informace naleznete v tématu Zabezpečení vyrovnávací paměti konzoly a přístupová práva.
lpBuffer [out]
Ukazatel na pole INPUT_RECORD struktur, které přijímají vstupní data vyrovnávací paměti.
nLength [in]
Velikost pole, na kterou odkazuje parametr lpBuffer , v elementech pole.
lpNumberOfEventsRead [out]
Ukazatel na proměnnou, která přijímá počet načtených vstupních záznamů.
wFlags [in]
Sada příznaků (spojených pomocí operace NEBO), které určují chování konzole při čtení.
| Hodnota | Význam |
|---|---|
CONSOLE_READ_NOREMOVE0x0001 |
Ponechte události ve vstupní vyrovnávací paměti (jako v PeekConsoleInput) |
CONSOLE_READ_NOWAIT0x0002 |
Okamžitě se vraťte, i když ve vstupní vyrovnávací paměti nejsou žádné události. |
Návratová hodnota
Pokud je funkce úspěšná, je návratová hodnota nenulová.
Pokud funkce selže, návratová hodnota je nula. Pokud chcete získat rozšířené informace o chybě, zavolejte GetLastError.
Poznámky
Tato funkce je konfigurovatelná verze ReadConsoleInput. Další provozní podrobnosti najdete v poznámkách ReadConsoleInput .
Volání ReadConsoleInputEx pomocí příznaků CONSOLE_READ_NOREMOVE | CONSOLE_READ_NOWAIT je ekvivalentní volání PeekConsoleInput.
Tato funkce v záhlaví konzoly systému Windows neexistuje. Pokud chcete získat přístup z aplikace jazyka C nebo C++, zahrňte následující deklarace a dynamicky propojit kernel32.dll, jak je uvedeno výše.
#ifndef CONSOLE_READ_NOREMOVE
#define CONSOLE_READ_NOREMOVE 0x0001
#endif
#ifndef CONSOLE_READ_NOWAIT
#define CONSOLE_READ_NOWAIT 0x0002
#endif
BOOL
WINAPI
ReadConsoleInputExA(
_In_ HANDLE hConsoleInput,
_Out_writes_(nLength) PINPUT_RECORD lpBuffer,
_In_ DWORD nLength,
_Out_ LPDWORD lpNumberOfEventsRead,
_In_ USHORT wFlags);
BOOL
WINAPI
ReadConsoleInputExW(
_In_ HANDLE hConsoleInput,
_Out_writes_(nLength) PINPUT_RECORD lpBuffer,
_In_ DWORD nLength,
_Out_ LPDWORD lpNumberOfEventsRead,
_In_ USHORT wFlags);
Požadavky
| Minimální podporovaný klient | Windows 7 [pouze desktopové aplikace] |
| Minimální podporovaný server | Windows Server 2003 [pouze desktopové aplikace] |
| Záhlaví | žádné, viz poznámky |
| Knihovna | žádné, viz poznámky |
| knihovna DLL | Kernel32.dll |
| Názvy Unicode a ANSI | ReadConsoleInputExW (Unicode) a ReadConsoleInputExA (ANSI) |