Compartir a través de


Función PropVariantToFileTime (propvarutil.h)

Extrae la estructura FILETIME de una estructura PROPVARIANT .

Sintaxis

PSSTDAPI PropVariantToFileTime(
  [in]  REFPROPVARIANT propvar,
  [in]  PSTIME_FLAGS   pstfOut,
  [out] FILETIME       *pftOut
);

Parámetros

[in] propvar

Tipo: REFPROPVARIANT

Referencia a una estructura PROPVARIANT de origen.

[in] pstfOut

Tipo: PSTIME_FLAGS

Especifica una de las marcas de tiempo siguientes.

PSTF_UTC (0)

Indica que la salida usará la hora universal coordinada.

PSTF_LOCAL (1)

Indica que la salida usará la hora local.

[out] pftOut

Tipo: FILETIME*

Cuando se devuelve esta función, contiene la estructura FILETIME extraída.

Valor devuelto

Tipo: HRESULT

Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

Esta función auxiliar se usa en lugares donde la aplicación que realiza la llamada espera que un PROPVARIANT contenga un único valor de filetime. Por ejemplo, una aplicación que obtiene valores de un almacén de propiedades puede usarlo para extraer de forma segura un valor filetime para las propiedades filetime.

Si el PROPVARIANT de origen tiene el tipo VT_FILETIME o VT_DATE, esta función auxiliar extrae el valor como FILETIME mediante la zona horaria especificada por pstfOut. Si el PROPVARIANT de origen es VT_EMPTY o cualquier otro tipo, esta función devuelve un resultado de error.

El PROPVARIANT de origen debe estar en hora universal coordinada (UTC). Las marcas PSTF_UTC y PSTF_LOCAL permiten a la aplicación que realiza la llamada especificar en qué zona horaria se debe convertir la salida.

Ejemplos

En el ejemplo siguiente, para incluirse como parte de un programa mayor, se muestra cómo usar PropVariantToFileTime para tener acceso a un valor FILETIME en un PROPVARIANT.

// IPropertyStore *ppropstore;
// Assume variable ppropstore is initialized and valid
PROPVARIANT propvar = {0};
HRESULT hr = ppropstore->GetValue(PKEY_DateModified, &propvar);
if (SUCCEEDED(hr))
{
     // PKEY_DateModified is expected to produce a VT_FILETIME or VT_EMPTY value.
     // PropVariantToFileTime will return a failure code for VT_EMPTY
     FILETIME ftModified;
     hr = PropVariantToFileTime(propvar, PSTF_UTC, &ftModified);
     if (SUCCEEDED(hr))
     {
        // ftModified is now valid and contains a file time in UTC
     }
     else
     {
        // Unable to convert propvar to a FILETIME
     }
     PropVariantClear(&propvar);
}

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP con SP2, Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 con SP1 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado propvarutil.h
Library Propsys.lib
Archivo DLL Propsys.dll (versión 6.0 o posterior)
Redistribuible Búsqueda de escritorio de Windows (WDS) 3.0

Consulte también

InitPropVariantFromFileTime

PropVariantChangeType

PropVariantToFileTimeVector

VariantToFileTime