NTSTATUS ConioAddInputEvents(PCONSOLE Console, PINPUT_RECORD InputRecords, // InputEvent ULONG NumEventsToWrite, PULONG NumEventsWritten, BOOLEAN AppendToEnd) { NTSTATUS Status = STATUS_SUCCESS; if (NumEventsWritten) *NumEventsWritten = 0; /* * This pre-processing code MUST be IN consrv ONLY!! */ NumEventsToWrite = PreprocessInput(Console, InputRecords, NumEventsToWrite); if (NumEventsToWrite == 0) return STATUS_SUCCESS; Status = ConDrvAddInputEvents(Console, InputRecords, NumEventsToWrite, NumEventsWritten, AppendToEnd); /* * This post-processing code MUST be IN consrv ONLY!! */ // if (NT_SUCCESS(Status)) if (Status == STATUS_SUCCESS) PostprocessInput(Console); return Status; }
static NTSTATUS ConioAddInputEvents(PCONSRV_CONSOLE Console, PINPUT_RECORD InputRecords, // InputEvent ULONG NumEventsToWrite, PULONG NumEventsWritten, BOOLEAN AppendToEnd) { NTSTATUS Status = STATUS_SUCCESS; if (NumEventsWritten) *NumEventsWritten = 0; NumEventsToWrite = PreprocessInput(Console, InputRecords, NumEventsToWrite); if (NumEventsToWrite == 0) return STATUS_SUCCESS; // Status = ConDrvAddInputEvents(Console, // InputRecords, // NumEventsToWrite, // NumEventsWritten, // AppendToEnd); Status = ConDrvWriteConsoleInput((PCONSOLE)Console, &Console->InputBuffer, AppendToEnd, InputRecords, NumEventsToWrite, NumEventsWritten); // if (NT_SUCCESS(Status)) if (Status == STATUS_SUCCESS) PostprocessInput(Console); return Status; }