com.sun.jna.platform.win32

## Interface Wincon

All Known Subinterfaces:
  Kernel32

    public interface Wincon

Ported from Wincon.h.

Author:
  lgoldstein

### Nested Class Summary

Nested Classes
`static class` `Wincon.CONSOLE_SCREEN_BUFFER_INFO` CONSOLE_SCREEN_BUFFER_INFO structure
`static class` `Wincon.COORD` COORD structure
`static class` `Wincon.INPUT_RECORD` INPUT_RECORD structure
`static class` `Wincon.KEY_EVENT_RECORD` KEY_EVENT_RECORD structure
`static class` `Wincon.MOUSE_EVENT_RECORD` MOUSE_EVENT_RECORD structure
`static class` `Wincon.SMALL_RECT` SMALL_RECT structure
`static class` `Wincon.WINDOW_BUFFER_SIZE_RECORD` WINDOW_BUFFER_SIZE_RECORD structure

### Field Summary

Fields
`static int` `ATTACH_PARENT_PROCESS`
`static int` `CONSOLE_FULLSCREEN`
`static int` `CONSOLE_FULLSCREEN_HARDWARE`
`static int` `CTRL_BREAK_EVENT`
`static int` `CTRL_C_EVENT`
`static int` `DISABLE_NEWLINE_AUTO_RETURN`
`static int` `ENABLE_ECHO_INPUT`
`static int` `ENABLE_EXTENDED_FLAGS`
`static int` `ENABLE_INSERT_MODE`
`static int` `ENABLE_LINE_INPUT`
`static int` `ENABLE_MOUSE_INPUT`
`static int` `ENABLE_PROCESSED_INPUT`
`static int` `ENABLE_PROCESSED_OUTPUT`
`static int` `ENABLE_QUICK_EDIT_MODE`
`static int` `ENABLE_VIRTUAL_TERMINAL_INPUT`
`static int` `ENABLE_VIRTUAL_TERMINAL_PROCESSING`
`static int` `ENABLE_WINDOW_INPUT`
`static int` `ENABLE_WRAP_AT_EOL_OUTPUT`
`static int` `MAX_CONSOLE_TITLE_LENGTH`
`static int` `STD_ERROR_HANDLE`
`static int` `STD_INPUT_HANDLE`
`static int` `STD_OUTPUT_HANDLE`

### Method Summary

All Methods Instance Methods Abstract Methods
`boolean` `AllocConsole()` Allocates a new console for the calling process.
`boolean` `AttachConsole(int dwProcessId)` Attaches the calling process to the console of the specified process
`boolean` `FlushConsoleInputBuffer(WinNT.HANDLE hConsoleInput)` Flushes the console input buffer.
`boolean` `FreeConsole()` Detaches the calling process from its console
`boolean` `GenerateConsoleCtrlEvent(int dwCtrlEvent, int dwProcessGroupId)` Sends a specified signal to a console process group that shares the console associated with the calling process.
`int` `GetConsoleCP()`
`boolean` `GetConsoleDisplayMode(IntByReference lpModeFlags)` Retrieves the display mode of the current console
`boolean` `GetConsoleMode(WinNT.HANDLE hConsoleHandle, IntByReference lpMode)`
`int` `GetConsoleOriginalTitle(char[] lpConsoleTitle, int nSize)`
`int` `GetConsoleOutputCP()`
`boolean` `GetConsoleScreenBufferInfo(WinNT.HANDLE hConsoleOutput, Wincon.CONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo)` Retrieves information about the specified console screen buffer.
`int` `GetConsoleTitle(char[] lpConsoleTitle, int nSize)`
`WinDef.HWND` `GetConsoleWindow()`
`boolean` `GetNumberOfConsoleInputEvents(WinNT.HANDLE hConsoleInput, IntByReference lpcNumberOfEvents)`
`boolean` `GetNumberOfConsoleMouseButtons(IntByReference lpNumberOfMouseButtons)`
`WinNT.HANDLE` `GetStdHandle(int nStdHandle)`
`boolean` `ReadConsoleInput(WinNT.HANDLE hConsoleInput, Wincon.INPUT_RECORD[] lpBuffer, int nLength, IntByReference lpNumberOfEventsRead)` Reads data from a console input buffer and removes it from the buffer.
`boolean` `SetConsoleCP(int wCodePageID)`
`boolean` `SetConsoleMode(WinNT.HANDLE hConsoleHandle, int dwMode)`
`boolean` `SetConsoleOutputCP(int wCodePageID)`
`boolean` `SetConsoleTitle(java.lang.String lpConsoleTitle)`
`boolean` `SetStdHandle(int nStdHandle, WinNT.HANDLE hHandle)`
`boolean` `WriteConsole(WinNT.HANDLE hConsoleOutput, java.lang.String lpBuffer, int nNumberOfCharsToWrite, IntByReference lpNumberOfCharsWritten, WinDef.LPVOID lpReserved)` Writes a character string to a console screen buffer beginning at the current cursor location.

### Field Detail

#### ATTACH_PARENT_PROCESS

    static final int ATTACH_PARENT_PROCESS

See Also:
  Constant Field Values

#### CTRL_C_EVENT

    static final int CTRL_C_EVENT

See Also:
  Constant Field Values

#### CTRL_BREAK_EVENT

    static final int CTRL_BREAK_EVENT

See Also:
  Constant Field Values

#### STD_INPUT_HANDLE

    static final int STD_INPUT_HANDLE

See Also:
  Constant Field Values

#### STD_OUTPUT_HANDLE

    static final int STD_OUTPUT_HANDLE

See Also:
  Constant Field Values

#### STD_ERROR_HANDLE

    static final int STD_ERROR_HANDLE

See Also:
  Constant Field Values

#### CONSOLE_FULLSCREEN

    static final int CONSOLE_FULLSCREEN

See Also:
  Constant Field Values

#### CONSOLE_FULLSCREEN_HARDWARE

    static final int CONSOLE_FULLSCREEN_HARDWARE

See Also:
  Constant Field Values

#### ENABLE_PROCESSED_INPUT

    static final int ENABLE_PROCESSED_INPUT

See Also:
  Constant Field Values

#### ENABLE_LINE_INPUT

    static final int ENABLE_LINE_INPUT

See Also:
  Constant Field Values

#### ENABLE_ECHO_INPUT

    static final int ENABLE_ECHO_INPUT

See Also:
  Constant Field Values

#### ENABLE_WINDOW_INPUT

    static final int ENABLE_WINDOW_INPUT

See Also:
  Constant Field Values

#### ENABLE_MOUSE_INPUT

    static final int ENABLE_MOUSE_INPUT

See Also:
  Constant Field Values

#### ENABLE_INSERT_MODE

    static final int ENABLE_INSERT_MODE

See Also:
  Constant Field Values

#### ENABLE_QUICK_EDIT_MODE

    static final int ENABLE_QUICK_EDIT_MODE

See Also:
  Constant Field Values

#### ENABLE_EXTENDED_FLAGS

    static final int ENABLE_EXTENDED_FLAGS

See Also:
  Constant Field Values

#### ENABLE_VIRTUAL_TERMINAL_PROCESSING

    static final int ENABLE_VIRTUAL_TERMINAL_PROCESSING

See Also:
  Constant Field Values

#### DISABLE_NEWLINE_AUTO_RETURN

    static final int DISABLE_NEWLINE_AUTO_RETURN

See Also:
  Constant Field Values

#### ENABLE_VIRTUAL_TERMINAL_INPUT

    static final int ENABLE_VIRTUAL_TERMINAL_INPUT

See Also:
  Constant Field Values

#### ENABLE_PROCESSED_OUTPUT

    static final int ENABLE_PROCESSED_OUTPUT

See Also:
  Constant Field Values

#### ENABLE_WRAP_AT_EOL_OUTPUT

    static final int ENABLE_WRAP_AT_EOL_OUTPUT

See Also:
  Constant Field Values

#### MAX_CONSOLE_TITLE_LENGTH

    static final int MAX_CONSOLE_TITLE_LENGTH

See Also:
  Constant Field Values

### Method Detail

#### AllocConsole

    boolean AllocConsole()

Allocates a new console for the calling process.

Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  AllocConsole documentation

#### FreeConsole

    boolean FreeConsole()

Detaches the calling process from its console

Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  FreeConsole documentation

#### AttachConsole

    boolean AttachConsole(int dwProcessId)

Attaches the calling process to the console of the specified process

Parameters:
  `dwProcessId` - The identifier of the process whose console is to be used. Can be either the process ID or the special `ATTACH_PARENT_PROCESS` value to indicate the console of the parent of the current process.
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  AttachConsole documentation

#### FlushConsoleInputBuffer

    boolean FlushConsoleInputBuffer(WinNT.HANDLE hConsoleInput)

Flushes the console input buffer. All input records currently in the input buffer are discarded.

Parameters:
  `hConsoleInput` - A handle to the console input buffer. The handle must have the GENERIC_WRITE access right.
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  FlushConsoleInputBuffer documentation

#### GenerateConsoleCtrlEvent

    boolean GenerateConsoleCtrlEvent(int dwCtrlEvent,
                                     int dwProcessGroupId)

Sends a specified signal to a console process group that shares the console associated with the calling process.

Parameters:
  `dwCtrlEvent` - The type of signal to be generated.
  `dwProcessGroupId` - The identifier of the process group to receive the signal
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  GenerateConsoleCtrlEvent documentation

#### GetConsoleCP

    int GetConsoleCP()

Returns:
  Code that identifies the code page
See Also:
  Code page identifiers

#### SetConsoleCP

    boolean SetConsoleCP(int wCodePageID)

Parameters:
  `wCodePageID` - The identifier of the code page to be set
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  SetConsoleCP documentation

#### GetConsoleOutputCP

    int GetConsoleOutputCP()

Returns:
  Retrieves the output code page used by the console associated with the calling process.
See Also:
  Code page identifiers

#### SetConsoleOutputCP

    boolean SetConsoleOutputCP(int wCodePageID)

Parameters:
  `wCodePageID` - The output code page used by the console associated with the calling process.
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  SetConsoleOutputCP documentation

#### GetConsoleWindow

    WinDef.HWND GetConsoleWindow()

Returns:
  The window handle used by the console associated with the calling process

#### GetNumberOfConsoleInputEvents

    boolean GetNumberOfConsoleInputEvents(WinNT.HANDLE hConsoleInput,
                                          IntByReference lpcNumberOfEvents)

Parameters:
  `hConsoleInput` - A handle to the console input buffer. The handle must have the GENERIC_READ access right
  `lpcNumberOfEvents` - A pointer to a variable that receives the number of unread input records in the console's input buffer
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  GetNumberOfConsoleInputEvents documentation

#### GetNumberOfConsoleMouseButtons

    boolean GetNumberOfConsoleMouseButtons(IntByReference lpNumberOfMouseButtons)

Parameters:
  `lpNumberOfMouseButtons` - A pointer to a variable that receives the number of mouse buttons
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  GetNumberOfConsoleMouseButtons documentation

#### GetStdHandle

    WinNT.HANDLE GetStdHandle(int nStdHandle)

Parameters:
  `nStdHandle` - The standard device identifier
Returns:
  A handle to the specified standard device (standard input, output, or error)

#### SetStdHandle

    boolean SetStdHandle(int nStdHandle,
                         WinNT.HANDLE hHandle)

Parameters:
  `nStdHandle` - The standard device identifier
  `hHandle` - The handle for the standard device
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  SetStdHandle documentation

#### GetConsoleDisplayMode

    boolean GetConsoleDisplayMode(IntByReference lpModeFlags)

Retrieves the display mode of the current console

Parameters:
  `lpModeFlags` - The display mode of the console
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  GetConsoleDisplayMode documentation

#### GetConsoleMode

    boolean GetConsoleMode(WinNT.HANDLE hConsoleHandle,
                           IntByReference lpMode)

Parameters:
  `hConsoleHandle` - A handle to the console input buffer or the console screen buffer. The handle must have the GENERIC_READ access right
  `lpMode` - A pointer to a variable that receives the current mode of the specified buffer
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  GetConsoleMode documentation

#### SetConsoleMode

    boolean SetConsoleMode(WinNT.HANDLE hConsoleHandle,
                           int dwMode)

Parameters:
  `hConsoleHandle` - A handle to the console input buffer or a console screen buffer. The handle must have the GENERIC_READ access right
  `dwMode` - The input or output mode mask to be set
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  SetConsoleMode documentation

#### GetConsoleTitle

    int GetConsoleTitle(char[] lpConsoleTitle,
                        int nSize)

Parameters:
  `lpConsoleTitle` - A pointer to a buffer that receives a null-terminated string containing the title. If the buffer is too small to store the title, the function stores as many characters of the title as will fit in the buffer, ending with a null terminator. Note: use `Native.toString(char[])` to convert it to a `String` value
  `nSize` - The size of the buffer pointed to by the lpConsoleTitle parameter, in characters.
Returns:
  If the function succeeds, the return value is the length of the console window's title, in characters. If the function fails, the return value is zero and `GetLastError` returns the error code.
See Also:
  GetConsoleTitle documentation

#### GetConsoleOriginalTitle

    int GetConsoleOriginalTitle(char[] lpConsoleTitle,
                                int nSize)

Parameters:
  `lpConsoleTitle` - A pointer to a buffer that receives a null-terminated string containing the original title. Note: use `Native.toString(char[])` to convert it to a `String` value
  `nSize` - The size of the lpConsoleTitle buffer, in characters
Returns:
  If the function succeeds, the return value is the length of the string copied to the buffer, in characters. If the buffer is not large enough to store the title, the return value is zero and `GetLastError` returns `ERROR_SUCCESS`. If the function fails, the return value is zero and `GetLastError` returns the error code.
See Also:
  GetConsoleOriginalTitle documentation

#### SetConsoleTitle

    boolean SetConsoleTitle(java.lang.String lpConsoleTitle)

Parameters:
  `lpConsoleTitle` - The string to be displayed in the title bar of the console window. The total size must be less than `MAX_CONSOLE_TITLE_LENGTH`.
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  SetConsoleTitle documentation

#### GetConsoleScreenBufferInfo

    boolean GetConsoleScreenBufferInfo(WinNT.HANDLE hConsoleOutput,
                                       Wincon.CONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo)

Retrieves information about the specified console screen buffer.

Parameters:
  `hConsoleOutput` - A handle to the console screen buffer.
  `lpConsoleScreenBufferInfo` - A pointer to a CONSOLE_SCREEN_BUFFER_INFO structure that receives the console screen buffer information.
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  GetConsoleScreenBufferInfo documentation

#### ReadConsoleInput

    boolean ReadConsoleInput(WinNT.HANDLE hConsoleInput,
                             Wincon.INPUT_RECORD[] lpBuffer,
                             int nLength,
                             IntByReference lpNumberOfEventsRead)

Reads data from a console input buffer and removes it from the buffer.

Parameters:
  `hConsoleInput` - A handle to the console input buffer.
  `lpBuffer` - A pointer to an array of INPUT_RECORD structures that receives the input buffer data.
  `nLength` - The size of the array pointed to by the lpBuffer parameter, in array elements.
  `lpNumberOfEventsRead` - A pointer to a variable that receives the number of input records read.
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  ReadConsoleInput documentation

#### WriteConsole

    boolean WriteConsole(WinNT.HANDLE hConsoleOutput,
                         java.lang.String lpBuffer,
                         int nNumberOfCharsToWrite,
                         IntByReference lpNumberOfCharsWritten,
                         WinDef.LPVOID lpReserved)

Writes a character string to a console screen buffer beginning at the current cursor location.

Parameters:
  `hConsoleOutput` - A handle to the console screen buffer.
  `lpBuffer` - A pointer to a buffer that contains characters to be written to the console screen buffer.
  `nNumberOfCharsToWrite` - The number of characters to be written.
  `lpNumberOfCharsWritten` - A pointer to a variable that receives the number of characters actually written.
  `lpReserved` - Reserved; must be NULL.
Returns:
  `true` if successful - if `false` then use `GetLastError()` to get extended error information
See Also:
  WriteConsole documentation

Copyright © 2007-2018 Timothy Wall. All Rights Reserved.