Skip to content

Commit

Permalink
Fixed #1315. (#1321)
Browse files Browse the repository at this point in the history
  • Loading branch information
mikebattista authored Oct 21, 2022
1 parent f08fd81 commit fa752cb
Show file tree
Hide file tree
Showing 4 changed files with 162 additions and 70 deletions.
144 changes: 74 additions & 70 deletions generation/WinSDK/emitter.settings.rsp
Original file line number Diff line number Diff line change
Expand Up @@ -542,10 +542,10 @@ IUIAutomationProxyFactory::CreateProvider::hwnd=HWND
IUIAutomation::ElementFromHandle::hwnd=HWND
IUIAutomation::ElementFromHandleBuildCache::hwnd=HWND
GetNetworkParams::return=WIN32_ERROR
DoDragDrop=[PreserveSig]
DoDragDrop=[CanReturnMultipleSuccessValues]
DwmGetWindowAttribute::dwAttribute=DWMWINDOWATTRIBUTE
DwmSetWindowAttribute::dwAttribute=DWMWINDOWATTRIBUTE
IShellFolder::EnumObjects=[PreserveSig]
IShellFolder::EnumObjects=[CanReturnMultipleSuccessValues]
RtlInstallFunctionTableCallback::TableIdentifier=ulong
RtlInstallFunctionTableCallback::BaseAddress=ulong
SetupDiCreateDeviceInfoA::DeviceInfoData=[In]
Expand Down Expand Up @@ -574,33 +574,33 @@ SetupDiRegisterDeviceInfo::DupDeviceInfoData=[In]
GetLastInputInfo::plii=[In]
IReferenceClock::AdviseTime::hEvent=HANDLE
IReferenceClock::AdvisePeriodic::hSemaphore=HANDLE
IDirectorySearch::GetNextRow=[PreserveSig]
IDirectorySearch::GetFirstRow=[PreserveSig]
IDirectorySearch::GetPreviousRow=[PreserveSig]
IDirectorySearch::GetNextColumnName=[PreserveSig]
IEnumString::Next=[PreserveSig]
IEnumString::Skip=[PreserveSig]
IEnumSTATPROPSTG::Next=[PreserveSig]
IEnumSTATPROPSTG::Skip=[PreserveSig]
IEnumMoniker::Next=[PreserveSig]
IEnumMoniker::Skip=[PreserveSig]
IEnumWorkItems::Next=[PreserveSig]
IEnumWorkItems::Skip=[PreserveSig]
IEnumSTATPROPSETSTG::Next=[PreserveSig]
IEnumSTATPROPSETSTG::Skip=[PreserveSig]
IEnumVARIANT::Next=[PreserveSig]
IEnumVARIANT::Skip=[PreserveSig]
IEnumGUID::Next=[PreserveSig]
IEnumGUID::Skip=[PreserveSig]
IEnumWbemClassObject::Next=[PreserveSig]
IEnumWbemClassObject::NextAsync=[PreserveSig]
IEnumWbemClassObject::Skip=[PreserveSig]
IEnumPortableDeviceObjectIDs::Next=[PreserveSig]
IEnumPortableDeviceObjectIDs::Skip=[PreserveSig]
ISequentialStream::Read=[PreserveSig]
ISequentialStream::Write=[PreserveSig]
IADsPropertyList::Next=[PreserveSig]
IADsPropertyList::Skip=[PreserveSig]
IDirectorySearch::GetNextRow=[CanReturnMultipleSuccessValues]
IDirectorySearch::GetFirstRow=[CanReturnMultipleSuccessValues]
IDirectorySearch::GetPreviousRow=[CanReturnMultipleSuccessValues]
IDirectorySearch::GetNextColumnName=[CanReturnMultipleSuccessValues]
IEnumString::Next=[CanReturnMultipleSuccessValues]
IEnumString::Skip=[CanReturnMultipleSuccessValues]
IEnumSTATPROPSTG::Next=[CanReturnMultipleSuccessValues]
IEnumSTATPROPSTG::Skip=[CanReturnMultipleSuccessValues]
IEnumMoniker::Next=[CanReturnMultipleSuccessValues]
IEnumMoniker::Skip=[CanReturnMultipleSuccessValues]
IEnumWorkItems::Next=[CanReturnMultipleSuccessValues]
IEnumWorkItems::Skip=[CanReturnMultipleSuccessValues]
IEnumSTATPROPSETSTG::Next=[CanReturnMultipleSuccessValues]
IEnumSTATPROPSETSTG::Skip=[CanReturnMultipleSuccessValues]
IEnumVARIANT::Next=[CanReturnMultipleSuccessValues]
IEnumVARIANT::Skip=[CanReturnMultipleSuccessValues]
IEnumGUID::Next=[CanReturnMultipleSuccessValues]
IEnumGUID::Skip=[CanReturnMultipleSuccessValues]
IEnumWbemClassObject::Next=[CanReturnMultipleSuccessValues]
IEnumWbemClassObject::NextAsync=[CanReturnMultipleSuccessValues]
IEnumWbemClassObject::Skip=[CanReturnMultipleSuccessValues]
IEnumPortableDeviceObjectIDs::Next=[CanReturnMultipleSuccessValues]
IEnumPortableDeviceObjectIDs::Skip=[CanReturnMultipleSuccessValues]
ISequentialStream::Read=[CanReturnMultipleSuccessValues]
ISequentialStream::Write=[CanReturnMultipleSuccessValues]
IADsPropertyList::Next=[CanReturnMultipleSuccessValues]
IADsPropertyList::Skip=[CanReturnMultipleSuccessValues]
JsDebugReadMemoryFlags=[ScopedEnum]
SHCreateItemFromIDList::ppv=[ComOutPtr]
SHCreateItemFromParsingName::ppv=[ComOutPtr]
Expand Down Expand Up @@ -873,31 +873,31 @@ IBackgroundCopyFile::GetLocalName::ppName=[FreeWith("CoTaskMemFree")]
IBackgroundCopyFile::GetRemoteName::ppName=[FreeWith("CoTaskMemFree")]
IBackgroundCopyFile2::GetFileRanges::Ranges=[FreeWith("CoTaskMemFree")]
IBackgroundCopyFile3::GetTemporaryName::pFilename=[FreeWith("CoTaskMemFree")]
IXmlReader::MoveToAttributeByName=[PreserveSig]
IXmlReader::MoveToNextAttribute=[PreserveSig]
IXmlReader::MoveToFirstAttribute=[PreserveSig]
IXmlReader::Read=[PreserveSig]
IXmlReader::ReadValueChunk=[PreserveSig]
IMILBitmapEffectPrimitiveImpl::IsDirty=[PreserveSig]
IMoniker::IsDirty=[PreserveSig]
IOfflineFilesChangeInfo::IsDirty=[PreserveSig]
IPersistFile::IsDirty=[PreserveSig]
IPersistFile::IsDirty=[PreserveSig]
IPersistMemory::IsDirty=[PreserveSig]
IPersistMoniker::IsDirty=[PreserveSig]
IPersistPropertyBag2::IsDirty=[PreserveSig]
IPersistStorage::IsDirty=[PreserveSig]
IPersistStream::IsDirty=[PreserveSig]
IPersistStreamInit::IsDirty=[PreserveSig]
ISceSvcAttachmentPersistInfo::IsDirty=[PreserveSig]
IAudioClient::IsFormatSupported=[PreserveSig]
IXmlReader::MoveToAttributeByName=[CanReturnMultipleSuccessValues]
IXmlReader::MoveToNextAttribute=[CanReturnMultipleSuccessValues]
IXmlReader::MoveToFirstAttribute=[CanReturnMultipleSuccessValues]
IXmlReader::Read=[CanReturnMultipleSuccessValues]
IXmlReader::ReadValueChunk=[CanReturnMultipleSuccessValues]
IMILBitmapEffectPrimitiveImpl::IsDirty=[CanReturnMultipleSuccessValues]
IMoniker::IsDirty=[CanReturnMultipleSuccessValues]
IOfflineFilesChangeInfo::IsDirty=[CanReturnMultipleSuccessValues]
IPersistFile::IsDirty=[CanReturnMultipleSuccessValues]
IPersistFile::IsDirty=[CanReturnMultipleSuccessValues]
IPersistMemory::IsDirty=[CanReturnMultipleSuccessValues]
IPersistMoniker::IsDirty=[CanReturnMultipleSuccessValues]
IPersistPropertyBag2::IsDirty=[CanReturnMultipleSuccessValues]
IPersistStorage::IsDirty=[CanReturnMultipleSuccessValues]
IPersistStream::IsDirty=[CanReturnMultipleSuccessValues]
IPersistStreamInit::IsDirty=[CanReturnMultipleSuccessValues]
ISceSvcAttachmentPersistInfo::IsDirty=[CanReturnMultipleSuccessValues]
IAudioClient::IsFormatSupported=[CanReturnMultipleSuccessValues]
CoInitializeSecurity::asAuthSvc=[-NativeArrayInfo]
^ID[2|3]D\w+$=[Agile]
^IDWrite\w+$=[Agile]
IWMDRMMessageParser::ParseLicenseRequestMsg::pbLicenseRequestMsg=[NativeArrayInfo(CountParamIndex = 1)]
IAudioClient::GetService::ppv=[ComOutPtr]
IDataObject::GetCanonicalFormatEtc=[PreserveSig]
IEnumExplorerCommand::Next=[PreserveSig]
IDataObject::GetCanonicalFormatEtc=[CanReturnMultipleSuccessValues]
IEnumExplorerCommand::Next=[CanReturnMultipleSuccessValues]
INetCfgComponentUpperEdge::AddInterfacesToAdapter::pAdapter=[-NativeArrayInfo]
LoadStringA::lpBuffer=[-NativeArrayInfo]
LoadStringW::lpBuffer=[-NativeArrayInfo]
Expand Down Expand Up @@ -926,11 +926,11 @@ MFTEnum2::Flags=MFT_ENUM_FLAG
MFTEnumEx::Flags=MFT_ENUM_FLAG
D2D1CreateFactory::ppIFactory=[ComOutPtr]
IRestrictedErrorInfo=[Agile]
IDXGISwapChain::Present=[PreserveSig]
IDXGISwapChain1::Present1=[PreserveSig]
IDXGIFactory::CreateSwapChain=[PreserveSig]
IDXGIDecodeSwapChain::PresentBuffer=[PreserveSig]
IDXGIDecodeSwapChainPartner::PresentBuffer=[PreserveSig]
IDXGISwapChain::Present=[CanReturnMultipleSuccessValues]
IDXGISwapChain1::Present1=[CanReturnMultipleSuccessValues]
IDXGIFactory::CreateSwapChain=[CanReturnMultipleSuccessValues]
IDXGIDecodeSwapChain::PresentBuffer=[CanReturnMultipleSuccessValues]
IDXGIDecodeSwapChainPartner::PresentBuffer=[CanReturnMultipleSuccessValues]
IDirectorySearch::AbandonSearch::phSearchResult=ADS_SEARCH_HANDLE
IDirectorySearch::CloseSearchHandle::hSearchResult=ADS_SEARCH_HANDLE
IDirectorySearch::ExecuteSearch::phSearchResult=ADS_SEARCH_HANDLE*
Expand All @@ -940,19 +940,19 @@ IDirectorySearch::GetNextColumnName::hSearchHandle=ADS_SEARCH_HANDLE
IDirectorySearch::GetNextRow::hSearchResult=ADS_SEARCH_HANDLE
IDirectorySearch::GetPreviousRow::hSearchResult=ADS_SEARCH_HANDLE
IDirectorySearch::GetNextColumnName::hSearchHandle=ADS_SEARCH_HANDLE
AcceptSecurityContext=[PreserveSig]
SaslAcceptSecurityContext=[PreserveSig]
InitializeSecurityContextA=[PreserveSig]
InitializeSecurityContextW=[PreserveSig]
SaslInitializeSecurityContextA=[PreserveSig]
SaslInitializeSecurityContextW=[PreserveSig]
DecryptMessage=[PreserveSig]
EncryptMessage=[PreserveSig]
IEnumIDList::Next=[PreserveSig]
IEnumIDList::Skip=[PreserveSig]
IEnumIDList::Reset=[PreserveSig]
IEnumIDList::Clone=[PreserveSig]
IDataObject::QueryGetData=[PreserveSig]
AcceptSecurityContext=[CanReturnMultipleSuccessValues]
SaslAcceptSecurityContext=[CanReturnMultipleSuccessValues]
InitializeSecurityContextA=[CanReturnMultipleSuccessValues]
InitializeSecurityContextW=[CanReturnMultipleSuccessValues]
SaslInitializeSecurityContextA=[CanReturnMultipleSuccessValues]
SaslInitializeSecurityContextW=[CanReturnMultipleSuccessValues]
DecryptMessage=[CanReturnMultipleSuccessValues]
EncryptMessage=[CanReturnMultipleSuccessValues]
IEnumIDList::Next=[CanReturnMultipleSuccessValues]
IEnumIDList::Skip=[CanReturnMultipleSuccessValues]
IEnumIDList::Reset=[CanReturnMultipleSuccessValues]
IEnumIDList::Clone=[CanReturnMultipleSuccessValues]
IDataObject::QueryGetData=[CanReturnMultipleSuccessValues]
CallNtPowerInformation::return=NTSTATUS
D3D11_BUFFER_DESC::BindFlags=D3D11_BIND_FLAG
D3D11_BUFFER_DESC::CPUAccessFlags=D3D11_CPU_ACCESS_FLAG
Expand Down Expand Up @@ -1171,8 +1171,8 @@ DWriteCreateFactory::factory=[ComOutPtr]void**
TrackPopupMenu::prcRect=[In][Optional][-Reserved]
LdapMapErrorToWin32::return=WIN32_ERROR
SHGetPropertyStoreFromParsingName::ppv=[ComOutPtr]
IDropSource::QueryContinueDrag=[PreserveSig]
IDropSource::GiveFeedback=[PreserveSig]
IDropSource::QueryContinueDrag=[CanReturnMultipleSuccessValues]
IDropSource::GiveFeedback=[CanReturnMultipleSuccessValues]
ReleaseStgMedium::param0=[Out]
# tsvirtualchannels.h
IWTSVirtualChannelManager::CreateListener::pszChannelName=PSTR
Expand Down Expand Up @@ -1203,4 +1203,8 @@ TreeSetNamedSecurityInfoA::return=WIN32_ERROR
TreeSetNamedSecurityInfoW::return=WIN32_ERROR
DnsQuery_A::return=WIN32_ERROR
DnsQuery_W::return=WIN32_ERROR
DnsQuery_UTF8::return=WIN32_ERROR
DnsQuery_UTF8::return=WIN32_ERROR
DXGIFactory::EnumAdapters=[CanReturnErrorsAsSuccess]
IDXGIFactory1::EnumAdapters1=[CanReturnErrorsAsSuccess]
IDXGIAdapter::EnumOutputs=[CanReturnErrorsAsSuccess]
ID2D1RenderTarget::EndDraw=[CanReturnErrorsAsSuccess]
70 changes: 70 additions & 0 deletions scripts/ChangesSinceLastRelease.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1906,3 +1906,73 @@ Windows.Win32.Web.MsHtml.IWebBridge.put_embed : v...Int16 => VARIANT_BOOL
Windows.Win32.Web.MsHtml.IWebBridge.put_Scrollbar : v...Int16 => VARIANT_BOOL
Windows.Win32.Web.MsHtml.IWebBrowserEventsService.FireBeforeNavigate2Event : pfCancel...Int16* => VARIANT_BOOL*
Windows.Win32.Web.MsHtml.IXMLGenericParse.SetGenericParse : fDoGeneric...Int16 => VARIANT_BOOL
# Fixed PreserveSig usage.
Windows.Win32.Data.Xml.XmlLite.IXmlReader.MoveToAttributeByName : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Data.Xml.XmlLite.IXmlReader.MoveToFirstAttribute : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Data.Xml.XmlLite.IXmlReader.MoveToNextAttribute : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Data.Xml.XmlLite.IXmlReader.Read : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Data.Xml.XmlLite.IXmlReader.ReadValueChunk : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Devices.PortableDevices.IEnumPortableDeviceObjectIDs.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Devices.PortableDevices.IEnumPortableDeviceObjectIDs.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Graphics.Direct2D.ID2D1RenderTarget.EndDraw : => [CanReturnErrorsAsSuccess]
Windows.Win32.Graphics.Dxgi.IDXGIAdapter.EnumOutputs : => [CanReturnErrorsAsSuccess]
Windows.Win32.Graphics.Dxgi.IDXGIDecodeSwapChain.PresentBuffer : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Graphics.Dxgi.IDXGIFactory.CreateSwapChain : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Graphics.Dxgi.IDXGIFactory1.EnumAdapters1 : => [CanReturnErrorsAsSuccess]
Windows.Win32.Graphics.Dxgi.IDXGISwapChain.Present : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Graphics.Dxgi.IDXGISwapChain1.Present1 : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Media.Audio.IAudioClient.IsFormatSupported : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Networking.ActiveDirectory.IADsPropertyList.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Networking.ActiveDirectory.IADsPropertyList.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Networking.ActiveDirectory.IDirectorySearch.GetFirstRow : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Networking.ActiveDirectory.IDirectorySearch.GetNextColumnName : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Networking.ActiveDirectory.IDirectorySearch.GetNextRow : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Networking.ActiveDirectory.IDirectorySearch.GetPreviousRow : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Security.Authentication.Identity.Apis.AcceptSecurityContext : [DllImport(SECUR32.dll,ExactSpelling=True),SupportedOSPlatform(windows6.0.6000)] => [CanReturnMultipleSuccessValues,DllImport(SECUR32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windows6.0.6000)]
Windows.Win32.Security.Authentication.Identity.Apis.DecryptMessage : [DllImport(SECUR32.dll,ExactSpelling=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(SECUR32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windows5.1.2600)]
Windows.Win32.Security.Authentication.Identity.Apis.EncryptMessage : [DllImport(SECUR32.dll,ExactSpelling=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(SECUR32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windows5.1.2600)]
Windows.Win32.Security.Authentication.Identity.Apis.InitializeSecurityContextA : [DllImport(SECUR32.dll,ExactSpelling=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(SECUR32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windows5.1.2600)]
Windows.Win32.Security.Authentication.Identity.Apis.InitializeSecurityContextW : [DllImport(SECUR32.dll,ExactSpelling=True),SupportedOSPlatform(windows5.1.2600)] => [CanReturnMultipleSuccessValues,DllImport(SECUR32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windows5.1.2600)]
Windows.Win32.Security.Authentication.Identity.Apis.SaslAcceptSecurityContext : [DllImport(SECUR32.dll,ExactSpelling=True),SupportedOSPlatform(windowsServer2003)] => [CanReturnMultipleSuccessValues,DllImport(SECUR32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windowsServer2003)]
Windows.Win32.Security.Authentication.Identity.Apis.SaslInitializeSecurityContextA : [DllImport(SECUR32.dll,ExactSpelling=True),SupportedOSPlatform(windowsServer2003)] => [CanReturnMultipleSuccessValues,DllImport(SECUR32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windowsServer2003)]
Windows.Win32.Security.Authentication.Identity.Apis.SaslInitializeSecurityContextW : [DllImport(SECUR32.dll,ExactSpelling=True),SupportedOSPlatform(windowsServer2003)] => [CanReturnMultipleSuccessValues,DllImport(SECUR32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windowsServer2003)]
Windows.Win32.Security.ConfigurationSnapin.ISceSvcAttachmentPersistInfo.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.Storage.OfflineFiles.IOfflineFilesChangeInfo.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IDataObject.GetCanonicalFormatEtc : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IDataObject.QueryGetData : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IEnumGUID.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IEnumGUID.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IEnumMoniker.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IEnumMoniker.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IEnumString.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IEnumString.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IPersistFile.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IPersistMemory.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IPersistStream.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.IPersistStreamInit.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.ISequentialStream.Read : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.ISequentialStream.Write : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.StructuredStorage.IEnumSTATPROPSETSTG.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.StructuredStorage.IEnumSTATPROPSETSTG.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.StructuredStorage.IEnumSTATPROPSTG.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.StructuredStorage.IEnumSTATPROPSTG.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.StructuredStorage.IPersistStorage.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Com.Urlmon.IPersistMoniker.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Ole.Apis.DoDragDrop : [DllImport(OLE32.dll,ExactSpelling=True),SupportedOSPlatform(windows5.0)] => [CanReturnMultipleSuccessValues,DllImport(OLE32.dll,ExactSpelling=True,PreserveSig=False),SupportedOSPlatform(windows5.0)]
Windows.Win32.System.Ole.IDropSource.GiveFeedback : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Ole.IDropSource.QueryContinueDrag : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Ole.IEnumVARIANT.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Ole.IEnumVARIANT.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Ole.IPersistPropertyBag2.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.TaskScheduler.IEnumWorkItems.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.TaskScheduler.IEnumWorkItems.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Wmi.IEnumWbemClassObject.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Wmi.IEnumWbemClassObject.NextAsync : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.System.Wmi.IEnumWbemClassObject.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.UI.Shell.IEnumExplorerCommand.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.UI.Shell.IEnumIDList.Clone : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.UI.Shell.IEnumIDList.Next : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.UI.Shell.IEnumIDList.Reset : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.UI.Shell.IEnumIDList.Skip : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.UI.Shell.IShellFolder.EnumObjects : [PreserveSig] => [CanReturnMultipleSuccessValues]
Windows.Win32.UI.Wpf.IMILBitmapEffectPrimitiveImpl.IsDirty : [PreserveSig] => [CanReturnMultipleSuccessValues]
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using System;
using System.Runtime.InteropServices;

namespace Windows.Win32.Interop
{
public class CanReturnErrorsAsSuccessAttribute : Attribute
{
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
using System;
using System.Runtime.InteropServices;

namespace Windows.Win32.Interop
{
public class CanReturnMultipleSuccessValuesAttribute : Attribute
{
}
}

0 comments on commit fa752cb

Please sign in to comment.