Funzione WriteConsoleInput
Importante
Questo documento descrive le funzionalità della piattaforma della console che non fanno più parte della roadmap dell'ecosistema. Non è consigliabile usare questo contenuto nei nuovi prodotti, ma continueremo a supportare gli utilizzi esistenti per il futuro indefinito. La soluzione moderna preferita è incentrata sulle sequenze di terminale virtuale per garantire la massima compatibilità negli scenari multipiattaforma. Per altre informazioni su questa decisione di progettazione, vedere il documento relativo alla console classica e al terminale virtuale.
Scrive i dati direttamente nel buffer di input della console.
Sintassi
BOOL WINAPI WriteConsoleInput(
_In_ HANDLE hConsoleInput,
_In_ const INPUT_RECORD *lpBuffer,
_In_ DWORD nLength,
_Out_ LPDWORD lpNumberOfEventsWritten
);
Parametri
hConsoleInput [in]
Handle per il buffer di input della console. L'handle deve avere il diritto di accesso GENERIC_WRITE . Per altre informazioni, vedere Sicurezza dei buffer della console e diritti di accesso.
lpBuffer [in]
Puntatore a una matrice di strutture INPUT_RECORD che contengono dati da scrivere nel buffer di input.
nLength [in]
Numero di record di input da scrivere.
lpNumberOfEventsWritten [out]
Puntatore a una variabile che riceve il numero di record di input effettivamente scritti.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è diverso da zero.
Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Osservazioni:
WriteConsoleInput inserisce i record di input nel buffer di input dietro gli eventi in sospeso nel buffer. Il buffer di input aumenta in modo dinamico, se necessario, per contenere tutti gli eventi scritti.
Questa funzione usa i caratteri Unicode o i caratteri a 8 bit dalla tabella codici corrente della console. Inizialmente il valore predefinito della tabella codici della console è la tabella codici OEM del sistema. Per modificare la tabella codici della console usare le funzioni SetConsoleCP o SetConsoleOutputCP. I consumer legacy possono anche usare i comandichcp o mode con cp select= ma non è consigliabile per il nuovo sviluppo.
Suggerimento
Questa API non è consigliata e non ha un terminale virtuale equivalente. Questa decisione allinea intenzionalmente la piattaforma Windows ad altri sistemi operativi. Questa operazione è considerata il verbo errato per questo buffer. Le applicazioni remote tramite utilità multipiattaforma e trasporti come SSH potrebbero non funzionare come previsto se si usa questa API.
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | ConsoleApi2.h (tramite WinCon.h, includere Windows.h) |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |
Nomi Unicode e ANSI | WriteConsoleInputW (Unicode) e WriteConsoleInputA (ANSI) |