Share via


PropVariantCopy (Compact 2013)

3/26/2014

This function copies the contents of one PROPVARIANT structure to another.

Syntax

WINOLEAPI PropVariantCopy(
  PROPVARIANT*       pvarDest,
  const PROPVARIANT* pvarSrc
);

Parameters

  • pvarDest
    [in, out] Pointer to an uninitialized PROPVARIANT structure that receives the copy.
  • pvarSrc
    [in] Pointer to the PROPVARIANT structure to be copied.

Return Values

The following table shows the return values for this function.

Value

Description

S_OK

The copy was successfully completed.

STG_E_INVALID_PARAMETER

The variant has an unknown type.

Remarks

Copies a PROPVARIANT structure by value so the original pvarSrc and new pvarDest parameters may be freed independently with calls to PropVariantClear. PropVariantCopy does not free the destination as the VariantCopy function does. For nonsimple PROPVARIANT types such as VT_STREAM, VT_STORAGE, and so forth, which require a subobject, the copy is made by reference. The pointer is copied and IUnknown::AddRef is called on it. It is illegal to pass NULL for either pvarDest or pvarSrc.

Requirements

Header

oaidl.h

Library

oleaut32.lib

See Also

Reference

Automation Functions
PROPVARIANT
PropVariantClear
VariantCopy
IUnknown::AddRef