IObjectCopy Interface

Provides access to members to copy objects by value. The object must support IPersistStream to be copied.

Description

Provides a mechanism to duplicate an object using an objects persistence mechanism (IPersistStream). The objects state is written to a temporary stream and then "rehydrated" from that stream into a new instance of the object. This process is also known as a deep clone as an object will also duplicate all sub objects that it contains. Even if the object supports IClone, you may still want to use ObjectCopy since it does a full copy or 'deep clone' of the object.

Members

Name Description
Method Copy Obtains a new object which is a copy of the input object.
Method Overwrite Overwrites the object with the contents of input object.

IObjectCopy.Copy Method

Obtains a new object which is a copy of the input object.

Public Function Copy ( _
    ByVal pInObject As Object _
) As Object
public object Copy (
    object pInObject
);

Description

Used to copy an object by value. The object must support IPersistStream. Even if the object supports IClone you may still want to use Copy as it does a full copy or 'deep clone' of the object.

Remarks

Copy may fail if there is insufficient memory.

IObjectCopy.Overwrite Method

Overwrites the object with the contents of input object.

Public Sub Overwrite ( _
    ByVal pInObject As Object, _
    ByRef pOverwriteObject As Object _
)
public void Overwrite (
    object pInObject,
    ref object pOverwriteObject
);

Description

Used to overwrite an existing object with the contents of another object. The objects must be the same type of object and support IPersistStream.

Remarks

Overwrite may fail if there is insufficient memory.

Classes that implement IObjectCopy

Classes Description
ObjectCopy CoClass to copy objects by value.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.