Функция PropVariantToUInt32VectorAlloc (propvarutil.h)
Извлекает данные из структуры PROPVARIANT в вновь выделенный вектор ULONG .
Синтаксис
PSSTDAPI PropVariantToUInt32VectorAlloc(
[in] REFPROPVARIANT propvar,
[out] ULONG **pprgn,
[out] ULONG *pcElem
);
Параметры
[in] propvar
Тип: REFPROPVARIANT
Ссылка на исходную структуру PROPVARIANT .
[out] pprgn
Тип: ULONG**
При возврате этой функции содержит указатель на вектор значений ULONG , извлеченных из исходной структуры PROPVARIANT .
[out] pcElem
Тип: ULONG*
При возврате этой функции содержит количество значений ULONG , извлеченных из исходной структуры PROPVARIANT .
Возвращаемое значение
Тип: HRESULT
Эта функция может возвращать одно из этих значений.
Код возврата | Описание |
---|---|
|
Возвращает S_OK в случае успешного выполнения или значение ошибки в противном случае. |
|
PROPVARIANT не был соответствующего типа. |
Комментарии
Эта вспомогательная функция используется в тех местах, где вызывающее приложение ожидает , что PROPVARIANT будет содержать вектор значений ULONG .
Если исходный PROPVARIANT имеет тип VT_VECTOR | VT_UI4 или VT_ARRAY | VT_UI4, эта функция извлекает вектор значений ULONG во вновь выделенный вектор. Вызывающее приложение отвечает за использование CoTaskMemFree для освобождения вектора, на который указывает pprgn , когда он больше не нужен.
Примеры
В следующем примере, который будет включен в более крупную программу, показано, как использовать PropVariantToUInt32VectorAlloc для доступа к значению вектора ULONG в PROPVARIANT.
// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid. The application is expecting propvar to contain a vector of ULONG values.
ULONG *prgLongs;
ULONG cElems;
HRESULT hr = PropVariantToUInt32VectorAlloc(propvar, &prgLongs, &cElems);
if (SUCCEEDED(hr))
{
// prgLongs now points to a vector of cElems ULONG.
CoTaskMemFree(prgLongs);
}
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | 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 |