Поделиться через


Функция PropVariantToInt64 (propvarutil.h)

Извлекает значение LONGLONG из структуры PROPVARIANT . Если не удается извлечь значение, присваивается значение по умолчанию.

Синтаксис

PSSTDAPI PropVariantToInt64(
  [in]  REFPROPVARIANT propvarIn,
  [out] LONGLONG       *pllRet
);

Параметры

[in] propvarIn

Тип: REFPROPVARIANT

Ссылка на исходную структуру PROPVARIANT .

[out] pllRet

Тип: LONGLONG*

При возврате этой функцией содержит значение извлеченного свойства, если оно существует; в противном случае — 0.

Возвращаемое значение

Тип: HRESULT

Если эта функция выполняется успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

Эта вспомогательская функция используется в тех местах, где вызывающее приложение ожидает proPVARIANT для хранения значения LONGLONG . Например, приложение, получающее значения из хранилища свойств, может использовать его для безопасного извлечения значения LONGLONG для свойств Int64.

Если исходный PROPVARIANT имеет тип VT_I8, эта вспомогательная функция извлекает значение LONGLONG . В противном случае он пытается преобразовать значение в структуре PROPVARIANT в LONGLONG. Если преобразование невозможно, PropVariantToInt64 вернет код сбоя и присвоит pllRet значение 0. Список возможных преобразований см. в разделе PropVariantChangeType . Следует отметить, что VT_EMPTY успешно преобразуется в 0.

Примеры

// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid
LONGLONG llValue; // The application is expecting propvar to hold a VT_I8 value
HRESULT hr = PropVariantToInt64(propvar, &llValue);
if (SUCCEEDED(hr))
{
     // llValue is valid
}                    
else
{
         // the extraction failed
}

Требования

Требование Значение
Минимальная версия клиента Windows XP с пакетом обновления 2 (SP2), Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2003 с пакетом обновления 1 (SP1) [только классические приложения]
Целевая платформа Windows
Header propvarutil.h
Библиотека Propsys.lib
DLL Propsys.dll (версия 6.0 или более поздняя)
Распространяемые компоненты Windows Desktop Search (WDS) 3.0

См. также раздел

InitPropVariantFromInt64

PropVariantChangeType

PropVariantToInt64Vector

VariantToInt64