For the latest documentation on Visual Studio 2017 RC, see Visual Studio 2017 RC Documentation.
This class provides a default implementation of the
IObjectSafety interface to allow a client to retrieve and set an object's safety levels.
This class and its members cannot be used in applications that execute in the Windows Runtime.
template <class T,DWORD dwSupportedSafety> class IObjectSafetyImpl
Your class, derived from
Specifies the supported safety options for the control. Can be one of the following values:
INTERFACESAFE_FOR_UNTRUSTED_CALLER The interface identified by the SetInterfaceSafetyOptions parameter
riidshould be made safe for scripting.
INTERFACESAFE_FOR_UNTRUSTED_DATA The interface identified by the
riidshould be made safe for untrusted data during initialization.
|IObjectSafetyImpl::GetInterfaceSafetyOptions||Retrieves the safety options supported by the object, as well as the safety options currently set for the object.|
|IObjectSafetyImpl::SetInterfaceSafetyOptions||Makes the object safe for initialization or scripting.|
|IObjectSafetyImpl::m_dwCurrentSafety||Stores the object's current safety level.|
IObjectSafetyImpl provides a default implementation of
IObjectSafety interface allows a client to retrieve and set an object's safety levels. For example, a web browser can call IObjectSafety::SetInterfaceSafetyOptions to make a control safe for initialization or safe for scripting.
Note that using the IMPLEMENTED_CATEGORY macro with the CATID_SafeForScripting and CATID_SafeForInitializing component categories provides an alternative way of specifying that a component is safe.
Retrieves the safety options supported by the object, as well as the safety options currently set for the object.
HRESULT GetInterfaceSafetyOptions( REFIID riid, DWORD* pdwSupportedOptions, DWORD* pdwEnabledOptions);
The implementation returns the appropriate values for any interface supported by the object's implementation of IUnknown::QueryInterface.
Any object that supports
See IObjectSafety::GetInterfaceSafetyOptions in the Windows SDK.
Stores the object's current safety level.
Makes the object safe for initialization or scripting by setting the m_dwCurrentSafety member to the appropriate value.
HRESULT SetInterfaceSafetyOptions( REFIID riid, DWORD dwOptionsSetMask, DWORD dwEnabledOptions);
The implementation returns E_NOINTERFACE for any interface not supported by the object's implementation of IUnknown::QueryInterface.
Any object that supports
See IObjectSafety::SetInterfaceSafetyOptions in the Windows SDK.