Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document the new 24H2 APIs #323

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
213 changes: 108 additions & 105 deletions docs/TOC.md
Original file line number Diff line number Diff line change
@@ -1,140 +1,143 @@
# [Home](index.md)
# [Home](index.md)

## [Ecosystem Roadmap](ecosystem-roadmap.md)
## [Definitions](definitions.md)
## [Console APIs vs. Virtual Terminal](classic-vs-vt.md)

# [About Character Mode Applications](about-character-mode-applications.md)
## [Input And Output Methods](input-and-output-methods.md)
# [About Character Mode Applications](about-character-mode-applications.md)
## [Input And Output Methods](input-and-output-methods.md)
## [Console Code Pages](console-code-pages.md)
## [Console Control Handlers](console-control-handlers.md)
## [Console Aliases](console-aliases.md)
## [Console Buffer Security and Access Rights](console-buffer-security-and-access-rights.md)
## [Console Application Issues](console-application-issues.md)

# [About Consoles](consoles.md)
## [Creation of a Console](creation-of-a-console.md)
## [Attaching to a Console](attaching-to-a-console.md)
# [About Consoles](consoles.md)
## [Creation of a Console](creation-of-a-console.md)
## [Attaching to a Console](attaching-to-a-console.md)
## [Closing a Console](closing-a-console.md)
## [Console Handles](console-handles.md)
## [Console Handles](console-handles.md)
## [Console Input Buffer](console-input-buffer.md)
## [Console Screen Buffers](console-screen-buffers.md)
## [Console Screen Buffers](console-screen-buffers.md)
## [Console Modes](console-modes.md)
## [Console Process Groups](console-process-groups.md)
## [Window And Screen Buffer Size](window-and-screen-buffer-size.md)
## [Window And Screen Buffer Size](window-and-screen-buffer-size.md)
## [Console Selection](console-selection.md)
## [About Legacy Console Mode](legacymode.md)
## [About Pseudoconsoles](pseudoconsoles.md)

# [Console Developer's guide & API Reference](console-reference.md)
## [Using The Console API](using-the-console.md)
### [High Level Console Input And Output Functions](high-level-console-input-and-output-functions.md)
### [Using The High Level Input And Output Functions](using-the-high-level-Input-and-output-functions.md)
### [High Level Console Modes](high-level-console-modes.md)
### [High Level Console I/O](high-level-console-i-o.md)
# [Console Developer's guide & API Reference](console-reference.md)
## [Using The Console API](using-the-console.md)
### [High Level Console Input And Output Functions](high-level-console-input-and-output-functions.md)
### [Using The High Level Input And Output Functions](using-the-high-level-Input-and-output-functions.md)
### [High Level Console Modes](high-level-console-modes.md)
### [High Level Console I/O](high-level-console-i-o.md)
### [Low Level Console Input Functions](low-level-console-input-functions.md)
### [Low Level Console Output Functions](low-level-console-output-functions.md)
### [Low Level Console I/O](low-level-console-i-o.md)
### [Low Level Console I/O](low-level-console-i-o.md)
### [Low Level Console Modes](low-level-console-modes.md)
### [Reading And Writing Blocks Of Characters And Attributes](reading-and-writing-blocks-of-Characters-and-attributes.md)
### [Reading Input Buffer Events](reading-input-buffer-events.md)
### [Reading And Writing Blocks Of Characters And Attributes](reading-and-writing-blocks-of-Characters-and-attributes.md)
### [Reading Input Buffer Events](reading-input-buffer-events.md)
### [Clearing the screen](clearing-the-screen.md)
### [Scrolling a Screen Buffer](scrolling-the-screen-buffer.md)
### [Scrolling a Screen Buffer's Contents](scrolling-a-screen-buffer-s-contents.md)
### [Scrolling a Screen Buffer's Window](scrolling-a-screen-buffer-s-window.md)
### [Ctrl C And Ctrl Break Signals](ctrl-c-and-ctrl-break-signals.md)
### [Ctrl Close Signal](ctrl-close-signal.md)
### [Registering a Control Handler Function](registering-a-control-handler-function.md)
### [Console Virtual Terminal Sequences](console-virtual-terminal-sequences.md)
### [Scrolling a Screen Buffer](scrolling-the-screen-buffer.md)
### [Scrolling a Screen Buffer's Contents](scrolling-a-screen-buffer-s-contents.md)
### [Scrolling a Screen Buffer's Window](scrolling-a-screen-buffer-s-window.md)
### [Ctrl C And Ctrl Break Signals](ctrl-c-and-ctrl-break-signals.md)
### [Ctrl Close Signal](ctrl-close-signal.md)
### [Registering a Control Handler Function](registering-a-control-handler-function.md)
### [Console Virtual Terminal Sequences](console-virtual-terminal-sequences.md)
### [Creating a Pseudoconsole Session](creating-a-pseudoconsole-session.md)

## [Console API Functions](console-functions.md)
### [AddConsoleAlias](addconsolealias.md)
### [AllocConsole](allocconsole.md)
### [AttachConsole](attachconsole.md)
## [Console API Functions](console-functions.md)
### [AddConsoleAlias](addconsolealias.md)
### [AllocConsole](allocconsole.md)
### [AllocConsoleWithOptions](allocconsolewithoptions.md)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

### [AttachConsole](attachconsole.md)
### [ClosePseudoConsole](closepseudoconsole.md)
### [CreateConsoleScreenBuffer](createconsolescreenbuffer.md)
### [CreatePseudoConsole](createpseudoconsole.md)
### [ConsoleControl](consolecontrol.md)
### [FillConsoleOutputAttribute](fillconsoleoutputattribute.md)
### [FillConsoleOutputCharacter](fillconsoleoutputcharacter.md)
### [FlushConsoleInputBuffer](flushconsoleinputbuffer.md)
### [FreeConsole](freeconsole.md)
### [GenerateConsoleCtrlEvent](generateconsolectrlevent.md)
### [GetConsoleAlias](getconsolealias.md)
### [GetConsoleAliases](getconsolealiases.md)
### [GetConsoleAliasesLength](getconsolealiaseslength.md)
### [GetConsoleAliasExes](getconsolealiasexes.md)
### [GetConsoleAliasExesLength](getconsolealiasexeslength.md)
### [GetConsoleCP](getconsolecp.md)
### [GetConsoleCursorInfo](getconsolecursorinfo.md)
### [GetConsoleDisplayMode](getconsoledisplaymode.md)
### [GetConsoleFontSize](getconsolefontsize.md)
### [GetConsoleHistoryInfo](getconsolehistoryinfo.md)
### [GetConsoleMode](getconsolemode.md)
### [GetConsoleOriginalTitle](getconsoleoriginaltitle.md)
### [GetConsoleOutputCP](getconsoleoutputcp.md)
### [GetConsoleProcessList](getconsoleprocesslist.md)
### [GetConsoleScreenBufferInfo](getconsolescreenBufferinfo.md)
### [GetConsoleScreenBufferInfoEx](getconsolescreenbufferinfoex.md)
### [GetConsoleSelectionInfo](getconsoleselectioninfo.md)
### [GetConsoleTitle](getconsoletitle.md)
### [GetConsoleWindow](getconsolewindow.md)
### [GetCurrentConsoleFont](getcurrentconsolefont.md)
### [GetCurrentConsoleFontEx](getcurrentconsolefontex.md)
### [GetLargestConsoleWindowSize](getlargestconsolewindowsize.md)
### [GetNumberOfConsoleInputEvents](getnumberofconsoleinputevents.md)
### [GetNumberOfConsoleMouseButtons](getnumberofconsolemousebuttons.md)
### [GetStdHandle](getstdhandle.md)
### [HandlerRoutine](handlerroutine.md)
### [PeekConsoleInput](peekconsoleinput.md)
### [ReadConsole](readconsole.md)
### [ReadConsoleInput](readconsoleinput.md)
### [CreateConsoleScreenBuffer](createconsolescreenbuffer.md)
### [CreatePseudoConsole](createpseudoconsole.md)
### [FillConsoleOutputAttribute](fillconsoleoutputattribute.md)
### [FillConsoleOutputCharacter](fillconsoleoutputcharacter.md)
### [FlushConsoleInputBuffer](flushconsoleinputbuffer.md)
### [FreeConsole](freeconsole.md)
### [GenerateConsoleCtrlEvent](generateconsolectrlevent.md)
### [GetConsoleAlias](getconsolealias.md)
### [GetConsoleAliases](getconsolealiases.md)
### [GetConsoleAliasesLength](getconsolealiaseslength.md)
### [GetConsoleAliasExes](getconsolealiasexes.md)
### [GetConsoleAliasExesLength](getconsolealiasexeslength.md)
### [GetConsoleCP](getconsolecp.md)
### [GetConsoleCursorInfo](getconsolecursorinfo.md)
### [GetConsoleDisplayMode](getconsoledisplaymode.md)
### [GetConsoleFontSize](getconsolefontsize.md)
### [GetConsoleHistoryInfo](getconsolehistoryinfo.md)
### [GetConsoleMode](getconsolemode.md)
### [GetConsoleOriginalTitle](getconsoleoriginaltitle.md)
### [GetConsoleOutputCP](getconsoleoutputcp.md)
### [GetConsoleProcessList](getconsoleprocesslist.md)
### [GetConsoleScreenBufferInfo](getconsolescreenBufferinfo.md)
### [GetConsoleScreenBufferInfoEx](getconsolescreenbufferinfoex.md)
### [GetConsoleSelectionInfo](getconsoleselectioninfo.md)
### [GetConsoleTitle](getconsoletitle.md)
### [GetConsoleWindow](getconsolewindow.md)
### [GetCurrentConsoleFont](getcurrentconsolefont.md)
### [GetCurrentConsoleFontEx](getcurrentconsolefontex.md)
### [GetLargestConsoleWindowSize](getlargestconsolewindowsize.md)
### [GetNumberOfConsoleInputEvents](getnumberofconsoleinputevents.md)
### [GetNumberOfConsoleMouseButtons](getnumberofconsolemousebuttons.md)
### [GetStdHandle](getstdhandle.md)
### [HandlerRoutine](handlerroutine.md)
### [PeekConsoleInput](peekconsoleinput.md)
### [ReadConsole](readconsole.md)
### [ReadConsoleInput](readconsoleinput.md)
### [ReadConsoleInputEx](readconsoleinputex.md)
### [ReadConsoleOutput](readconsoleoutput.md)
### [ReadConsoleOutputAttribute](readconsoleoutputattribute.md)
### [ReadConsoleOutputCharacter](readconsoleoutputcharacter.md)
### [ReadConsoleOutput](readconsoleoutput.md)
### [ReadConsoleOutputAttribute](readconsoleoutputattribute.md)
### [ReadConsoleOutputCharacter](readconsoleoutputcharacter.md)
### [ReleasePseudoConsole](releasepseudoconsole.md)
### [ResizePseudoConsole](resizepseudoconsole.md)
### [ScrollConsoleScreenBuffer](scrollconsolescreenbuffer.md)
### [SetConsoleActiveScreenBuffer](setconsoleactivescreenbuffer.md)
### [SetConsoleCP](setconsolecp.md)
### [SetConsoleCtrlHandler](setconsolectrlhandler.md)
### [SetConsoleCursorInfo](setconsolecursorinfo.md)
### [SetConsoleCursorPosition](setconsolecursorposition.md)
### [SetConsoleDisplayMode](setconsoledisplaymode.md)
### [SetConsoleHistoryInfo](setconsolehistoryinfo.md)
### [SetConsoleMode](setconsolemode.md)
### [SetConsoleOutputCP](setconsoleoutputcp.md)
### [SetConsoleScreenBufferInfoEx](setconsolescreenbufferinfoex.md)
### [SetConsoleScreenBufferSize](setconsolescreenbuffersize.md)
### [SetConsoleTextAttribute](setconsoletextattribute.md)
### [SetConsoleTitle](setconsoletitle.md)
### [SetConsoleWindowInfo](setconsolewindowinfo.md)
### [SetCurrentConsoleFontEx](setcurrentconsolefontex.md)
### [SetStdHandle](setstdhandle.md)
### [WriteConsole](writeconsole.md)
### [WriteConsoleInput](writeconsoleinput.md)
### [WriteConsoleOutput](writeconsoleoutput.md)
### [WriteConsoleOutputAttribute](writeconsoleoutputattribute.md)
### [ScrollConsoleScreenBuffer](scrollconsolescreenbuffer.md)
### [SetConsoleActiveScreenBuffer](setconsoleactivescreenbuffer.md)
### [SetConsoleCP](setconsolecp.md)
### [SetConsoleCtrlHandler](setconsolectrlhandler.md)
### [SetConsoleCursorInfo](setconsolecursorinfo.md)
### [SetConsoleCursorPosition](setconsolecursorposition.md)
### [SetConsoleDisplayMode](setconsoledisplaymode.md)
### [SetConsoleHistoryInfo](setconsolehistoryinfo.md)
### [SetConsoleMode](setconsolemode.md)
### [SetConsoleOutputCP](setconsoleoutputcp.md)
### [SetConsoleScreenBufferInfoEx](setconsolescreenbufferinfoex.md)
### [SetConsoleScreenBufferSize](setconsolescreenbuffersize.md)
### [SetConsoleTextAttribute](setconsoletextattribute.md)
### [SetConsoleTitle](setconsoletitle.md)
### [SetConsoleWindowInfo](setconsolewindowinfo.md)
### [SetCurrentConsoleFontEx](setcurrentconsolefontex.md)
### [SetStdHandle](setstdhandle.md)
### [WriteConsole](writeconsole.md)
### [WriteConsoleInput](writeconsoleinput.md)
### [WriteConsoleOutput](writeconsoleoutput.md)
### [WriteConsoleOutputAttribute](writeconsoleoutputattribute.md)
### [WriteConsoleOutputCharacter](writeconsoleoutputcharacter.md)

## [Console API Structures](console-structures.md)
### [CONSOLE_HISTORY_INFO structure](console-history-info.md)
### [CONSOLE_READCONSOLE_CONTROL structure](console-readconsole-control.md)
### [CONSOLE_SELECTION_INFO structure](console-selection-info-str.md)
## [Console API Structures](console-structures.md)
### [ALLOC_CONSOLE_OPTIONS](alloc-console-options.md)
### [CHAR_INFO structure](char-info-str.md)
### [CONSOLE_CURSOR_INFO structure](console-cursor-info-str.md)
### [CONSOLE_FONT_INFO structure](console-font-info-str.md)
### [CONSOLE_FONT_INFOEX structure](console-font-infoex.md)
### [CONSOLE_SCREEN_BUFFER_INFO structure](console-screen-buffer-info-str.md)
### [CONSOLE_SCREEN_BUFFER_INFOEX structure](console-screen-buffer-infoex.md)
### [CHAR_INFO structure](char-info-str.md)
### [COORD structure](coord-str.md)
### [SMALL_RECT structure](small-rect-str.md)
### [INPUT_RECORD structure](input-record-str.md)
### [KEY_EVENT_RECORD structure](key-event-record-str.md)
### [MENU_EVENT_RECORD structure](menu-event-record-str.md)
### [MOUSE_EVENT_RECORD structure](mouse-event-record-str.md)
### [FOCUS_EVENT_RECORD structure](focus-event-record-str.md)
### [WINDOW_BUFFER_SIZE_RECORD structure](window-buffer-size-record-str.md)
### [CONSOLE_HISTORY_INFO structure](console-history-info.md)
### [CONSOLE_READCONSOLE_CONTROL structure](console-readconsole-control.md)
### [CONSOLE_SCREEN_BUFFER_INFO structure](console-screen-buffer-info-str.md)
### [CONSOLE_SCREEN_BUFFER_INFOEX structure](console-screen-buffer-infoex.md)
### [CONSOLE_SELECTION_INFO structure](console-selection-info-str.md)
### [COORD structure](coord-str.md)
### [FOCUS_EVENT_RECORD structure](focus-event-record-str.md)
### [INPUT_RECORD structure](input-record-str.md)
### [KEY_EVENT_RECORD structure](key-event-record-str.md)
### [MENU_EVENT_RECORD structure](menu-event-record-str.md)
### [MOUSE_EVENT_RECORD structure](mouse-event-record-str.md)
### [SMALL_RECT structure](small-rect-str.md)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I sorted these alphabetically.

### [WINDOW_BUFFER_SIZE_RECORD structure](window-buffer-size-record-str.md)

## [Console API Winevents](console-winevents.md)
## [Console API Winevents](console-winevents.md)
63 changes: 63 additions & 0 deletions docs/alloc-console-options.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
---
title: ALLOC_CONSOLE_OPTIONS structure
description: See reference information about the ALLOC_CONSOLE_OPTIONS structure, which contains extended information about a console screen buffer.
author: lhecker
ms.author: lhecker
ms.topic: article
keywords: console, character mode applications, command line applications, terminal applications, console api
f1_keywords:
- consoleapi/ALLOC_CONSOLE_OPTIONS
- ALLOC_CONSOLE_OPTIONS
- PALLOC_CONSOLE_OPTIONS
topic_type:
- apiref
api_name:
- ALLOC_CONSOLE_OPTIONS
api_location:
- WinCon.h
api_type:
- HeaderDef
---

# ALLOC\_CONSOLE\_OPTIONS structure

Controls how **AllocConsoleWithOptions** allocates a console window.

## Syntax

```C
typedef struct _ALLOC_CONSOLE_OPTIONS {
ALLOC_CONSOLE_MODE mode;
BOOL useShowWindow;
WORD showWindow;
} ALLOC_CONSOLE_OPTIONS, *PALLOC_CONSOLE_OPTIONS;
```

## Members

**mode**
This parameter can be one of the following values:

| Value | Meaning |
|-|-|
| **ALLOC\_CONSOLE\_MODE\_DEFAULT** 0 | Allocate a console session if one was requested by the parent process. |
| **ALLOC\_CONSOLE\_MODE\_NEW\_WINDOW** 1 | Allocate a console session with a window, even if this process was created with **CREATE\_NO\_CONSOLE** or **DETACHED\_PROCESS**. |
| **ALLOC\_CONSOLE\_MODE\_NO\_WINDOW** 2 | Allocate a console session without a window, even if this process was created with **CREATE\_NEW\_WINDOW** or **DETACHED\_PROCESS**. |

**useShowWindow**
Specifies whether the **showWindow** parameter should be used.

**showWindow**
If **useShowWindow** is **TRUE**, this specifies the **nCmdShow** used to show the console window. See [**ShowWindow**](/windows/win32/api/winuser/nf-winuser-showwindow) for more information.

## Requirements

|   |   |
|-|-|
| Minimum supported client | Windows 11 24H2 (build 26100) \[desktop apps only\] |
| Minimum supported server | n/a |
| Header | ConsoleApi.h (via WinCon.h, include Windows.h) |

## See also

[**AllocConsoleWithOptions**](allocconsolewithoptions.md)
4 changes: 3 additions & 1 deletion docs/allocconsole.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ author: miniksa
ms.author: miniksa
ms.topic: article
keywords: console, character mode applications, command line applications, terminal applications, console api
f1_keywords:
f1_keywords:
- consoleapi/AllocConsole
- wincon/AllocConsole
- AllocConsole
Expand Down Expand Up @@ -77,6 +77,8 @@ This function is primarily used by a graphical user interface (GUI) application

[Consoles](consoles.md)

[**AllocConsoleWithOptions**](allocconsolewithoptions.md)

[**AttachConsole**](attachconsole.md)

[**CreateProcess**](/windows/win32/api/processthreadsapi/nf-processthreadsapi-createprocessa)
Expand Down
Loading