#41567: Some new Win32 APIs are missing from w32api Open Date: 2021-02-12 14:20 Last Update: 2021-05-11 18:12 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-11 18:12 Updated by: keith Comment: Reply To eliz Reply To keith Reply To eliz * PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE macro * Other PROC_THREAD_ATTRIBUTE_* macros What do you mean by other PROC_THREAD_ATTRIBUTE_* macros? I'm guessing you are referring to those enumerated as valid for the Attribute parameter of UpdateThreadAttribute(), but that documentation is utterly useless, because the enumeration is no more than a meaningless list of macro names; it does not specify appropriate values for any of those 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. Actually, some seem to be supported in Vista, some in Win7, and some not until Win8; PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE appears not to be supported even for all Win10, but only from Win10-v1809 (October 2018 update). I agree that <winbase.h> is the appropriate header for deployment, but that hardly matters; the lack of appropriate publicly accessible documentation is a blocker! Unless someone can provide appropriate third-party documentation, (not copies of Microsoft SDK headers), this request cannot be fulfilled. Are we allowed to look in MinGW64 headers and take the info from there? Sorry, but I have to say "no". Although I don't have conclusive proof, our history with that project leads me to a strong suspicion that their headers will have been plagiarized from Microsoft's, in violation of Microsoft's terms of use; I will not make myself an accessory to such suspected plagiarism. --------------------------------------------------------------------- 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