PROP_ENTRY_INTERFACE_EX
Lets you specify a particular IID If your object supports multiple dispatch interfaces. Resembles PROP_ENTRY_INTERFACE.
PROP_ENTRY_INTERFACE_EX(
szDesc,
dispid,
clsid,
iidDispatch,
rgclsidAllowed,
cclsidAllowed,
vt
)
Parameters
[in] szDesc
The property description.[in] dispid
The DISPID of the property.[in] clsid
The CLSID of the associated property page. Use the special value CLSID_NULL for a property that does not have an associated property page.[in] iidDispatch
The IID of the dispatch interface that defines the property.[in] rgclsidAllowed
An array of CLSIDs that can be loaded. For stability, use a const array.[in] cclsidAllowed
The number of elements in rgclsidAllowed.[in] vt
The type for the property.
Remarks
Include this macro to give an application more control over the IPersistStreamInitImpl::Load process. This macro only applies if IPersistStreamInitImpl is a base class and the class is advertised as safe for initializing. Otherwise, you should not use this macro.
In most cases, cclsidAllowed can be determined by _countof(rgclsidAllowed).
This macro is only valid if vt is VT_DISPATCH or VT_UNKNOWN. Passing in a different value for vt to this macro will cause a compilation error. For any other value of vt, use PROP_ENTRY_TYPE_EX.
The BEGIN_PROP_MAP macro marks the beginning of the property map; the END_PROP_MAP macro marks the end.
If you are creating a web control that needs to be initialized, you should use the IPersistPropertyBagImpl Class instead of IPersistStreamInitImpl to initialize properties. IPersistStreamInitImpl possess a greater risk in binary format than IPersistPropertyBagImpl.
Requirements
Header: atlcom.h