| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/winrt/ |
Upload File : |
// Microsoft Windows
// Copyright (c) Microsoft Corporation. All rights reserved.
cpp_quote("// Microsoft Windows")
cpp_quote("// Copyright (c) Microsoft Corporation. All rights reserved.")
cpp_quote("#pragma once")
#ifndef DO_NO_IMPORTS
import "inspectable.idl";
#endif
[
object,
uuid(00000037-0000-0000-C000-000000000046),
pointer_default(unique)
]
interface IWeakReference: IUnknown
{
cpp_quote("#if (_MSC_VER >= 1600) && defined(__cplusplus) && !defined(CINTERFACE)")
cpp_quote(" EXTERN_C const IID IID_IWeakReference;")
cpp_quote(" extern \"C++\"")
cpp_quote(" {")
cpp_quote(" MIDL_INTERFACE(\"00000037-0000-0000-C000-000000000046\")")
cpp_quote(" IWeakReference : public IUnknown")
cpp_quote(" {")
cpp_quote(" public:")
cpp_quote(" virtual HRESULT STDMETHODCALLTYPE Resolve( ")
cpp_quote(" /* [in] */ __RPC__in REFIID riid,")
cpp_quote(" /* [iid_is][out] */ __RPC__deref_out IInspectable **objectReference) = 0;")
cpp_quote("")
cpp_quote(" template <typename T>")
cpp_quote(" _At_(*objectReference, _When_(FAILED(return), _Null_))")
cpp_quote(" _At_(*objectReference, _When_(SUCCEEDED(return), _Maybenull_))")
cpp_quote(" HRESULT Resolve(_Out_ T** objectReference)")
cpp_quote(" {")
cpp_quote(" static_assert(__is_base_of(IInspectable, T), \"Only Windows Runtime interfaces can be resolved by weak reference\");")
cpp_quote(" return Resolve(__uuidof(T), (IInspectable**)objectReference);")
cpp_quote(" }")
cpp_quote(" };")
cpp_quote(" } // extern C++")
cpp_quote("#else")
HRESULT Resolve([in] REFIID riid,
[out, retval, iid_is(riid)] IInspectable **objectReference);
}
cpp_quote("#endif")
[
object,
uuid(00000038-0000-0000-C000-000000000046),
pointer_default(unique)
]
interface IWeakReferenceSource : IUnknown
{
HRESULT GetWeakReference([out, retval] IWeakReference **weakReference);
}