(Msg)WaitFor(Single|Multiple)Object(s)(Ex) now return Result instead of WIN32_ERROR. Fixed #1558.

This commit is contained in:
Mike Battista 2023-05-02 15:25:19 -07:00
Родитель 9c85a12dd7
Коммит 49918f687c
3 изменённых файлов: 51 добавлений и 23 удалений

Просмотреть файл

@ -3,6 +3,7 @@ using Windows.Win32.Devices.Properties; // For DEVPROPKEY
using static Windows.Win32.Data.Xml.MsXml.Apis; // Various constants
using static Windows.Win32.Devices.DeviceAccess.Apis; // Various constants
using static Windows.Win32.Foundation.Apis; // Various constants
using static Windows.Win32.Foundation.WAIT_EVENT;
using static Windows.Win32.Foundation.WIN32_ERROR;
using static Windows.Win32.Graphics.Direct3D9.D3DFORMAT; // For D3DFMT_* constants
using static Windows.Win32.Media.Apis; // Various constants

Просмотреть файл

@ -4126,7 +4126,32 @@
{
"name": "NO_ERROR",
"value": 0
}
],
"uses": [
{
"method": "GetLastError",
"parameter": "return"
},
{
"method": "SetLastError",
"parameter": "dwErrCode"
},
{
"method": "SetLastErrorEx",
"parameter": "dwErrCode"
},
{
"struct": "NETINFOSTRUCT",
"field": "dwStatus"
}
]
},
{
"namespace": "Windows.Win32.Foundation",
"type": "uint",
"name": "WAIT_EVENT",
"members": [
{
"name": "WAIT_OBJECT_0",
"value": 0
@ -4154,19 +4179,11 @@
],
"uses": [
{
"method": "GetLastError",
"method": "WaitForSingleObject",
"parameter": "return"
},
{
"method": "SetLastError",
"parameter": "dwErrCode"
},
{
"method": "SetLastErrorEx",
"parameter": "dwErrCode"
},
{
"method": "SignalObjectAndWait",
"method": "WaitForSingleObjectEx",
"parameter": "return"
},
{
@ -4177,14 +4194,6 @@
"method": "WaitForMultipleObjectsEx",
"parameter": "return"
},
{
"method": "WaitForSingleObject",
"parameter": "return"
},
{
"method": "WaitForSingleObjectEx",
"parameter": "return"
},
{
"method": "MsgWaitForMultipleObjects",
"parameter": "return"
@ -4198,8 +4207,8 @@
"parameter": "return"
},
{
"struct": "NETINFOSTRUCT",
"field": "dwStatus"
"method": "SignalObjectAndWait",
"parameter": "return"
}
]
},

Просмотреть файл

@ -54242,7 +54242,6 @@ Windows.Win32.UI.Wpf.IMILBitmapEffectPrimitiveImpl.IsDirty : [CanReturnMultipleS
Windows.Win32.UI.Xaml.Diagnostics.MetadataBit : [ScopedEnum] => [Documentation(https://docs.microsoft.com/windows/win32/api/xamlom/ne-xamlom-metadatabit),ScopedEnum]
# Fixed #1558.
Windows.Win32.Networking.WinSock.Apis.WSAWaitForMultipleEvents : [DllImport(WS2_32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windows8.1)] => [CanReturnMultipleSuccessValues,DllImport(WS2_32.dll,ExactSpelling=True,PreserveSig=False),Documentation(https://docs.microsoft.com/windows/win32/api/winsock2/nf-winsock2-wsawaitformultipleevents),SupportedOSPlatform(windows8.1)]
Windows.Win32.Networking.WinSock.Apis.WSAWaitForMultipleEvents : return...UInt32 => WIN32_ERROR
Windows.Win32.System.Threading.Apis.SignalObjectAndWait added
Windows.Win32.System.Threading.Apis.WaitForMultipleObjects : [DllImport(KERNEL32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(KERNEL32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),Documentation(https://docs.microsoft.com/windows/win32/api/synchapi/nf-synchapi-waitformultipleobjects),SupportedOSPlatform(windows5.1.2600)]
Windows.Win32.System.Threading.Apis.WaitForMultipleObjectsEx : [DllImport(KERNEL32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(KERNEL32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),Documentation(https://docs.microsoft.com/windows/win32/api/synchapi/nf-synchapi-waitformultipleobjectsex),SupportedOSPlatform(windows5.1.2600)]
@ -54250,9 +54249,7 @@ Windows.Win32.System.Threading.Apis.WaitForSingleObject : [DllImport(KERNEL32.dl
Windows.Win32.System.Threading.Apis.WaitForSingleObjectEx : [DllImport(KERNEL32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(KERNEL32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),Documentation(https://docs.microsoft.com/windows/win32/api/synchapi/nf-synchapi-waitforsingleobjectex),SupportedOSPlatform(windows5.1.2600)]
Windows.Win32.System.WindowsProgramming.Apis.SignalObjectAndWait removed
Windows.Win32.UI.WindowsAndMessaging.Apis.MsgWaitForMultipleObjects : [DllImport(USER32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(USER32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),Documentation(https://docs.microsoft.com/windows/win32/api/winuser/nf-winuser-msgwaitformultipleobjects),SupportedOSPlatform(windows5.1.2600)]
Windows.Win32.UI.WindowsAndMessaging.Apis.MsgWaitForMultipleObjects : return...UInt32 => WIN32_ERROR
Windows.Win32.UI.WindowsAndMessaging.Apis.MsgWaitForMultipleObjectsEx : [DllImport(USER32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(USER32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),Documentation(https://docs.microsoft.com/windows/win32/api/winuser/nf-winuser-msgwaitformultipleobjectsex),SupportedOSPlatform(windows5.1.2600)]
Windows.Win32.UI.WindowsAndMessaging.Apis.MsgWaitForMultipleObjectsEx : return...UInt32 => WIN32_ERROR
# Fixed #1557.
Windows.Win32.System.Memory.Apis.LocalFree : [DllImport(KERNEL32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnErrorsAsSuccess,DllImport(KERNEL32.dll,ExactSpelling=True,PreserveSig=False,SetLastError=True),Documentation(https://docs.microsoft.com/windows/win32/api/winbase/nf-winbase-localfree),SupportedOSPlatform(windows5.1.2600)]
# Fixed #412.
@ -57509,3 +57506,24 @@ Windows.Win32.UI.WindowsAndMessaging.MrmPlatformVersion : => [Documentation(htt
Windows.Win32.UI.WindowsAndMessaging.MrmResourceIndexerHandle : => [Documentation(https://docs.microsoft.com/windows/win32/menurc/mrmresourceindexerhandle)]
Windows.Win32.UI.WindowsAndMessaging.MrmResourceIndexerMessage : => [Documentation(https://docs.microsoft.com/windows/win32/menurc/mrmresourceindexermessage)]
Windows.Win32.UI.WindowsAndMessaging.MrmResourceIndexerMessageSeverity : => [Documentation(https://docs.microsoft.com/windows/win32/menurc/mrmresourceindexermessageseverity)]
# Fixed #1558.
Windows.Win32.Foundation.WAIT_EVENT added
Windows.Win32.Foundation.WAIT_EVENT.WAIT_ABANDONED added
Windows.Win32.Foundation.WAIT_EVENT.WAIT_ABANDONED_0 added
Windows.Win32.Foundation.WAIT_EVENT.WAIT_FAILED added
Windows.Win32.Foundation.WAIT_EVENT.WAIT_IO_COMPLETION added
Windows.Win32.Foundation.WAIT_EVENT.WAIT_OBJECT_0 added
Windows.Win32.Foundation.WAIT_EVENT.WAIT_TIMEOUT added
Windows.Win32.Foundation.WIN32_ERROR.WAIT_ABANDONED removed
Windows.Win32.Foundation.WIN32_ERROR.WAIT_ABANDONED_0 removed
Windows.Win32.Foundation.WIN32_ERROR.WAIT_FAILED removed
Windows.Win32.Foundation.WIN32_ERROR.WAIT_IO_COMPLETION removed
Windows.Win32.Foundation.WIN32_ERROR.WAIT_OBJECT_0 removed
Windows.Win32.Foundation.WIN32_ERROR.WAIT_TIMEOUT removed
Windows.Win32.Networking.WinSock.Apis.WSAWaitForMultipleEvents : return...UInt32 => WAIT_EVENT
Windows.Win32.System.Threading.Apis.WaitForMultipleObjects : return...WIN32_ERROR => WAIT_EVENT
Windows.Win32.System.Threading.Apis.WaitForMultipleObjectsEx : return...WIN32_ERROR => WAIT_EVENT
Windows.Win32.System.Threading.Apis.WaitForSingleObject : return...WIN32_ERROR => WAIT_EVENT
Windows.Win32.System.Threading.Apis.WaitForSingleObjectEx : return...WIN32_ERROR => WAIT_EVENT
Windows.Win32.UI.WindowsAndMessaging.Apis.MsgWaitForMultipleObjects : return...UInt32 => WAIT_EVENT
Windows.Win32.UI.WindowsAndMessaging.Apis.MsgWaitForMultipleObjectsEx : return...UInt32 => WAIT_EVENT