Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Extrae el valor de la propiedad Int32 de una estructura PROPVARIANT . Si no se puede extraer ningún valor, se asigna un valor predeterminado.
Sintaxis
PSSTDAPI PropVariantToInt32(
[in] REFPROPVARIANT propvarIn,
[out] LONG *plRet
);
Parámetros
[in] propvarIn
Tipo: REFPROPVARIANT
Referencia a una estructura PROPVARIANT de origen.
[out] plRet
Tipo: LONG*
Cuando se devuelve esta función, contiene el valor extraído si existe uno; de lo contrario, 0.
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 valor Int32 . Por ejemplo, una aplicación que obtiene valores de un almacén de propiedades puede usarla para extraer de forma segura el valor Int32 de las propiedades Int32 .
Si el PROPVARIANT de origen tiene el tipo VT_I4, esta función auxiliar extrae el valor largo . De lo contrario, intenta convertir el valor de la estructura PROPVARIANT en un valor long. Si no es posible una conversión, PropVariantToInt32 devolverá un código de error y establecerá plRet en 0. Consulte PropVariantChangeType para obtener una lista de las posibles conversiones. Tenga en cuenta que VT_EMPTY se convierte correctamente en 0.
Ejemplos
// IPropertyStore *ppropstore;
// Assume variable ppropstore is initialized and valid
PROPVARIANT propvar = {0};
HRESULT hr = ppropstore->GetValue(PKEY_FlagStatus, &propvar);
if (SUCCEEDED(hr))
{
// PKEY_FlagStatus is expected to produce a VT_I4 or VT_EMPTY value.
// PropVariantToInt32 will convert VT_EMPTY to 0.
INT32 iStatus;
hr = PropVariantToInt32(propvar, &iStatus);
if (SUCCEEDED(hr))
{
// iStatus is now valid
}
else
{
// iStatus is always 0
}
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 | Windows Desktop Search (WDS) 3.0 |