-
Notifications
You must be signed in to change notification settings - Fork 83
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
base: main
Are you sure you want to change the base?
Conversation
## [Console API Functions](console-functions.md) | ||
### [AddConsoleAlias](addconsolealias.md) | ||
### [AllocConsole](allocconsole.md) | ||
### [AllocConsoleWithOptions](allocconsolewithoptions.md) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🚫 Whitespace changes: https://github.com/MicrosoftDocs/Console-Docs/pull/323/files?w=1
Learn Build status updates of commit 20768a8: ✅ Validation status: passed
For more details, please refer to the build report. For any questions, please:
|
### [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) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I sorted these alphabetically.
Learn Build status updates of commit ebda27d: ✅ Validation status: passed
For more details, please refer to the build report. For any questions, please:
|
|
||
## Examples | ||
|
||
For a full walkthrough on using this function to establish a pseudoconsole session, please see [Creating a Pseudoconsole Session](creating-a-pseudoconsole-session.md). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR doesn't change this file - should it?
|
||
## Remarks | ||
|
||
Before this method was introduced, the initial pseudoconsole API was inherently flawed: **ClosePseudoConsole** would only exit until after the pseudoconsole has finished using the output pipe. This meant that the pseudoconsole effectively kept your application alive. The **HPCON** handle owned by your application on the other hand kept the pseudoconsole session alive until **ClosePseudoConsole** was called. This created a lifetime and ownership loop. The way applications were expected to break this loop up was by manually waiting for the spawned terminal processes to exit and then call **ClosePseudoConsole**. This made the API failure prone and resulted in shutdown deadlocks in various applications. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd rephrase the "inherently flawed" part... but i am not sure how
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(We don't usually editorialize in the docs!)
Adds documentation for:
AllocConsoleWithOptions
and its accompanying structReleasePseudoConsole
ClosePseudoConsole