PropVariantToInt32VectorAlloc 函式 (propvarutil.h)
將數據從 PROPVARIANT 結構擷取到新配置的 Int32 向量。
語法
PSSTDAPI PropVariantToInt32VectorAlloc(
[in] REFPROPVARIANT propvar,
[out] LONG **pprgn,
[out] ULONG *pcElem
);
參數
[in] propvar
類型: REFPROPVARIANT
來源 PROPVARIANT 結構的參考。
[out] pprgn
類型: LONG**
當此函式傳回時,會包含從來源 PROPVARIANT 結構擷取之LONG值的向量指標。
[out] pcElem
類型: ULONG*
當此函式傳回時,包含從來源 PROPVARIANT 結構擷取的LONG元素計數。
傳回值
類型: HRESULT
此函式可以傳回其中一個值。
傳回碼 | 描述 |
---|---|
|
如果成功,則傳回 S_OK ,否則傳回錯誤值。 |
|
PROPVARIANT 不是適當的類型。 |
備註
此協助程式函式用於呼叫應用程式預期 PROPVARIANT 保留 Int32 向量值的位置。
如果來源 PROPVARIANT 的類型VT_VECTOR VT_I4 | 或VT_ARRAY | VT_I4,此函式會將LONG值的向量擷取到新配置的向量。 呼叫的應用程式負責使用 CoTaskMemFree ,在不再需要時釋放 pprgn 所指向的向量。
範例
下列範例要包含在較大的程式中,示範如何使用 PropVariantToInt32VectorAlloc 來存取 PROPVARIANT 中的 LONG 向量值。
// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid. The application is expecting propvar to contain a vector of LONG values.
LONG *prgLongs;
ULONG cElems;
HRESULT hr = PropVariantToInt32VectorAlloc(propvar, &prgLongs, &cElems);
if (SUCCEEDED(hr))
{
// prgLongs now points to a vector of cElems LONGs.
CoTaskMemFree(prgLongs);
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP 搭配 SP2、Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 SP1 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | propvarutil.h |
程式庫 | Propsys.lib |
Dll | Propsys.dll (6.0 版或更新版本) |
可轉散發套件 | Windows 桌面搜尋 (WDS) 3.0 |