Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Extrai o valor da propriedade Int32 de uma estrutura PROPVARIANT . Se nenhum valor puder ser extraído, um valor padrão será atribuído.
Sintaxe
PSSTDAPI PropVariantToInt32(
[in] REFPROPVARIANT propvarIn,
[out] LONG *plRet
);
Parâmetros
[in] propvarIn
Tipo: REFPROPVARIANT
Referência a uma estrutura PROPVARIANT de origem .
[out] plRet
Tipo: LONG*
Quando essa função retorna, contém o valor extraído se houver um; caso contrário, 0.
Retornar valor
Tipo: HRESULT
Se essa função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.
Comentários
Essa função auxiliar é usada em locais em que o aplicativo de chamada espera que um PROPVARIANT mantenha um valor Int32 . Por exemplo, um aplicativo que obtém valores de um repositório de propriedades pode usá-lo para extrair com segurança o valor Int32 para propriedades Int32 .
Se o PROPVARIANT de origem tiver o tipo VT_I4, essa função auxiliar extrairá o valor longo . Caso contrário, ele tentará converter o valor na estrutura PROPVARIANT em um long. Se uma conversão não for possível, PropVariantToInt32 retornará um código de falha e definirá plRet como 0. Consulte PropVariantChangeType para obter uma lista de conversões possíveis. Observe que VT_EMPTY é convertido com êxito em 0.
Exemplos
// 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 | Valor |
|---|---|
| Cliente mínimo com suporte | Windows XP com SP2, Windows Vista [somente aplicativos da área de trabalho] |
| Servidor mínimo com suporte | Windows Server 2003 com SP1 [somente aplicativos da área de trabalho] |
| Plataforma de Destino | Windows |
| Cabeçalho | propvarutil.h |
| Biblioteca | Propsys.lib |
| DLL | Propsys.dll (versão 6.0 ou posterior) |
| Redistribuível | Pesquisa da Área de Trabalho do Windows (WDS) 3.0 |