PropVariantGetFileTimeElem function (propvarutil.h)

Extracts a single FILETIME element from a PROPVARIANT structure of type VT_FILETIME, VT_VECTOR | VT_FILETIME, or VT_ARRAY | VT_FILETIME.

Syntax

PSSTDAPI PropVariantGetFileTimeElem(
  [in]  REFPROPVARIANT propvar,
  [in]  ULONG          iElem,
  [out] FILETIME       *pftVal
);

Parameters

[in] propvar

Type: REFPROPVARIANT

The source PROPVARIANT structure.

[in] iElem

Type: ULONG

Specifies vector or array index; otherwise, this value must be 0.

[out] pftVal

Type: FILETIME*

When this function returns, contains the extracted filetime value.

Return value

Type: HRESULT

If this function succeeds, it returns S_OK. Otherwise, it returns an HRESULT error code.

Remarks

If the source PROPVARIANT has type VT_FILETIME, iElem must be 0; otherwise, iElem must be less than the number of elements in the vector or array. You can use PropVariantGetElementCount to obtain the number of elements in the vector or array.

Examples

The following code example, to be included as part of a larger program, demonstrates how to use PropVariantGetFileTimeElem in an iteration statement to access the values in PROPVARIANT.

// PROPVARIANT propvar;
// Assume propvar is initialized and valid;

if ((propvar.vt & VT_TYPEMASK) == VT_FILETIME)
{
    UINT cElem = PropVariantGetElementCount(propvar);
    HRESULT hr = <mark type="const">S_OK</mark>;

    for (UINT iElem = 0; SUCCEEDED(hr) && iElem < cElem; iElem ++)
    {
        FILETIME ftValue;
        hr = PropVariantGetFileTimeElem(propvar, iElem, &ftValue);

        if (SUCCEEDED(hr))
        {
            // ftValue is valid now
        }
    }
}

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

PropVariantGetElem