PropVariantToInt64VectorAlloc function (propvarutil.h)

Extracts data from a PROPVARIANT structure into a newly-allocated LONGLONG vector.

Syntax

PSSTDAPI PropVariantToInt64VectorAlloc(
  [in]  REFPROPVARIANT propvar,
  [out] LONGLONG       **pprgn,
  [out] ULONG          *pcElem
);

Parameters

[in] propvar

Type: REFPROPVARIANT

Reference to a source PROPVARIANT structure.

[out] pprgn

Type: LONGLONG**

When this function returns, contains a pointer to a vector of LONGLONG values extracted from the source PROPVARIANT structure.

[out] pcElem

Type: ULONG*

When this function returns, contains the count of LONGLONG values extracted from source PROPVARIANT structure.

Return value

Type: HRESULT

This function can return one of these values.

Return code Description
S_OK
Returns S_OK if successful, or an error value otherwise.
E_INVALIDARG
ThePROPVARIANT was not of the appropriate type.

Remarks

This helper function is used in places where the calling application expects a PROPVARIANT to hold a vector of LONGLONG values.

If the source PROPVARIANT has type VT_VECTOR | VT_I8 or VT_ARRAY | VT_I8, this function extracts a vector of LONGLONG values into a newly allocated vector. The calling application is responsible for using CoTaskMemFree to release the vector pointed to by pprgn when it is no longer needed.

Examples

The following example, to be included as part of a larger program, demonstrates how to use PropVariantToInt64VectorAlloc to access a LONGLONG vector value in a PROPVARIANT.

// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid. The application is expecting propvar to contain a vector of LONGLONG values.
LONGLONG *prgLongs;
ULONG cElems;
HRESULT hr = PropVariantToInt64VectorAlloc(propvar, &prgLongs, &cElems);
if (SUCCEEDED(hr))
{
     // prgLongs now points to a vector of cElems LONGLONGs.
     CoTaskMemFree(prgLongs);
}

Requirements

Requirement Value
Minimum supported client Windows XP with SP2, Windows Vista [desktop apps only]
Minimum supported server Windows Server 2003 with SP1 [desktop apps only]
Target Platform Windows
Header propvarutil.h
Library Propsys.lib
DLL Propsys.dll (version 6.0 or later)
Redistributable Windows Desktop Search (WDS) 3.0

See also

InitPropVariantFromInt64Vector

PropVariantGetInt64Elem

PropVariantToInt64

PropVariantToInt64Vector

VariantToInt64Array