IObjectWithBackReferences interface (shobjidl_core.h)
Provides a method for interacting with back references held by an object.
Inheritance
The IObjectWithBackReferences interface inherits from the IUnknown interface. IObjectWithBackReferences also has these types of members:
Methods
The IObjectWithBackReferences interface has these methods.
IObjectWithBackReferences::RemoveBackReferences Removes all back references held by an object. |
Remarks
When to Use
When an object contains forward references to child objects that have back references to the parent object, circular references can occur. To break this circle, the parent object needs to keep track of back references from child objects.When to Implement
This interface should be implemented by Shell data source objects (objects that implement IShellFolder) that hold references to other objects in a way that might result in reference cycles. For example, an object that maintains references to other data source objects that are cached as the result of binding operations should implement this interface.This interface was available in Windows Vista with Service Pack 1 (SP1), but it was not declared in a public header until Windows 7. For use in Windows Vista with SP1, the following Interface Definition Language (IDL) fragment describes this interface, including its IID.
object,
uuid(321a6a6a-d61f-4bf3-97ae-14be2986bb36),
pointer_default(unique)
]
interface IObjectWithBackReferences : IUnknown
{
HRESULT RemoveBackReferences();
}
The following C++ fragment can be used to enable access to this interface.
struct
__declspec(uuid("321a6a6a-d61f-4bf3-97ae-14be2986bb36"))
__declspec(novtable)
IObjectWithBackReferences : public IUnknown
{
public:
virtual HRESULT __stdcall RemoveBackReferences() = 0;
};
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista with SP1, Windows 7 [desktop apps only] |
Minimum supported server | Windows Server 2008 R2 [desktop apps only] |
Target Platform | Windows |
Header | shobjidl_core.h (include Shobjidl.h) |