Send MinGW-Notify mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
https://lists.osdn.me/mailman/listinfo/mingw-notify
or, via email, send a message with subject or body 'help' to
[email protected]
You can reach the person managing the list at
[email protected]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of MinGW-Notify digest..."
Please do not reply to this notification; the sender address is unable to
accept incoming e-mail. If you wish to unsubscribe you can do so at
https://lists.osdn.me/mailman/listinfo/mingw-notify.
Today's Topics:
1. [mingw] #41567: Some new Win32 APIs are missing from w32api
(MinGW Notification List)
----------------------------------------------------------------------
Message: 1
Date: Mon, 10 May 2021 22:09:05 +0100
From: MinGW Notification List <[email protected]>
To: OSDN Ticket System <[email protected]>
Subject: [MinGW-Notify] [mingw] #41567: Some new Win32 APIs are
missing from w32api
Message-ID: <[email protected]>
Content-Type: text/plain; charset=UTF-8
#41567: Some new Win32 APIs are missing from w32api
Open Date: 2021-02-12 14:20
Last Update: 2021-05-10 22:09
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-10 22:09 Updated by: keith
Comment:
Reply To eliz
Second, we need functions, data structures, and macros to create and update
lists of attributes for process and thread creation.
Okay. In the absence of any third party patch submissions, I decided to have a
look into this, myself.
These are:
* InitializeProcThreadAttributeList function
* UpdateProcThreadAttribute function
* DeleteProcThreadAttributeList function
I can find prototypes for these, on docs.microsoft.com, so no problem to add
them to <winbase.h>. AFAICT, they should be available from Vista onwards — in
fact, they must be if STARTUPINFOEX is, because the additional data which this
incorporates, over STARTUPINFO itself, cannot be manipulated without them.
* PROC_THREAD_ATTRIBUTE_LIST structure
AFAICT, this is undocumented (by Microsoft), but maybe we can get away with a
opaque declaration, since this should only ever be accessed via an
LPPROC_THREAD_ATTRIBUTE_LIST pointer, and manipulated using the preceding three
functions.
* STARTUPINFOEX structure
Once again, I can implement this, in terms of the documentation on
docs.microsoft.com.
* 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.
We also need the EXTENDED_STARTUPINFO_PRESENT flag for the CreateProcess
function (this flag is supported since Vista and should be in winbase.h).
This one is easy enough; it is adequately documented here.
---------------------------------------------------------------------
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
------------------------------
Subject: Digest Footer
_______________________________________________
MinGW-Notify mailing list
[email protected]
https://lists.osdn.me/mailman/listinfo/mingw-notify
------------------------------
End of MinGW-Notify Digest, Vol 44, Issue 2
*******************************************