#41567: Some new Win32 APIs are missing from w32api Open Date: 2021-02-12 16:20 Last Update: 2021-05-12 19:13 URL for this Ticket: https://osdn.net//projects/mingw/ticket/41567 RSS feed for this Ticket: https://osdn.net/ticket/ticket_rss.php?group_id=3917&tid=41567 --------------------------------------------------------------------- Last Changes/Comment on this Ticket: 2021-05-12 19:13 Updated by: eliz Comment: Reply To keith Reply To keith Indeed. If you can find sources, which aren't encumbered by an exclusive licence, that's fine; for example, from this GitHub page, I deduce that {{{ code cs internal const uint PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE = 0x00020016; }}} A further example: on pinvoke.net I see {{{ code PROC_THREAD_ATTRIBUTE_PARENT_PROCESS = 0x00020000, PROC_THREAD_ATTRIBUTE_HANDLE_LIST = 0x00020002 }}} with terms of use which grant us complete freedom to use this information, subject to us accepting any liabilities for any consequence of such use. I can suggest this: https://github.com/mozilla/positron/blob/master/security/sandbox/chromium-shim/base/win/sdkdecls.h It is under the Mozilla license. --------------------------------------------------------------------- Ticket Status: Reporter: eliz Owner: (None) Type: Feature Request Status: Open Priority: 5 - Medium MileStone: (None) Component: WSL Severity: 5 - Medium Resolution: None --------------------------------------------------------------------- Ticket details: To compile programs that use the Pseudo Console feature introduced recently with Windows 10, there's a need in several additions to the MinGW w32api headers and import libraries. First, we need a value for _WIN32_WINNT that specifies Windows 10, in sdkddkver.h: #define _WIN32_WINNT_WIN10 0x0A00 Second, we need functions, data structures, and macros to create and update lists of attributes for process and thread creation. These are: InitializeProcThreadAttributeList function UpdateProcThreadAttribute function DeleteProcThreadAttributeList function PROC_THREAD_ATTRIBUTE_LIST structure STARTUPINFOEX structure PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE macro Other PROC_THREAD_ATTRIBUTE_* macros These seem to be supported since Windows 7, with the exception of PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE, which is only supported since Windows 10, and STARTUPINFOEX, which is supported since Vista. I think the proper place for them is in the winbase.h header file. We also need the EXTENDED_STARTUPINFO_PRESENT flag for the CreateProcess function (this flag is supported since Vista and should be in winbase.h). And finally, we need the functions, data types, and macros to manipulate pseudo-consoles, available only since Windows 10: CreatePseudoConsole function ClosePseudoConsole function ResizePseudoConsole function HPCON data type Thanks in advance for providing these. -- Ticket information of MinGW - Minimalist GNU for Windows project MinGW - Minimalist GNU for Windows Project is hosted on OSDN Project URL: https://osdn.net/projects/mingw/ OSDN: https://osdn.net URL for this Ticket: https://osdn.net/projects/mingw/ticket/41567 RSS feed for this Ticket: https://osdn.net/ticket/ticket_rss.php?group_id=3917&tid=41567