3.1.3.4 Clone (Opnum 6)

The Clone method creates a copy of the collection object that contains an identical copy of the data and state as the original collection.

 HRESULT Clone(
   [in, out] IVssEnumMgmtObject** ppenum
 );

ppenum: A pointer to an IVssEnumMgmtObject pointer that upon completion contains a pointer to an instance of IVssEnumMgmtObject, which contains a copy of the data and state of the original collection. A caller MUST release the ppenum received when the caller is done with it.

Return Values: The method MUST return zero when it has succeeded or an implementation-specific, nonzero error code on failure.

No exceptions are thrown except those that are thrown by the underlying RPC protocol [MS-RPCE].

When the server receives this message, it MUST verify that ppenum is not NULL.

The server MUST create a new IVssEnumMgmtObject instance that contains a copy of the object collection. The internal cursor of the collection copy MUST point to the same object as the cursor in the original collection.