Função PropVariantToFileTimeVector (propvarutil.h)
Extrai dados de uma estrutura PROPVARIANT em um vetor FILETIME.
Sintaxe
PSSTDAPI PropVariantToFileTimeVector(
[in] REFPROPVARIANT propvar,
[out] FILETIME *prgft,
[in] ULONG crgft,
[out] ULONG *pcElem
);
Parâmetros
[in] propvar
Tipo: REFPROPVARIANT
Referência a uma estrutura PROPVARIANT de origem .
[out] prgft
Tipo: FILETIME*
Aponta para um buffer que contém valores FILETIME crgft . Quando essa função retorna, o buffer foi inicializado com elementos pcElem FILETIME extraídos da estrutura PROPVARIANT de origem.
[in] crgft
Tipo: ULONG
Tamanho em elementos do buffer apontado por prgft.
[out] pcElem
Tipo: ULONG*
Quando essa função retorna, contém a contagem de elementos FILETIME extraídos da estrutura PROPVARIANT de origem.
Retornar valor
Tipo: HRESULT
Retorna um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
Retorna S_OK se tiver êxito ou um valor de erro, caso contrário. |
|
O PROPVARIANT de origem continha mais do que valores crgn. O buffer apontado por prgft. |
|
O PROPVARIANT não era do tipo apropriado. |
Comentários
Essa função auxiliar é usada em locais onde o aplicativo de chamada espera que um PROPVARIANT mantenha um valor de vetor de tempo de arquivo com um número fixo de elementos.
Se o PROPVARIANT de origem tiver o tipo VT_VECTOR | VT_FILETIME, essa função auxiliar extrai até valores FILETIME crgft e os coloca no buffer apontado por prgft. Se o PROPVARIANT contiver mais elementos do que caberá no buffer de prgft , essa função retornará um erro e definirá pcElem como 0.
Os FILETIMEs de saída usarão o mesmo fuso horário que os FILETIMEs de origem.
Exemplos
O exemplo a seguir, a ser incluído como parte de um programa maior, demonstra como usar PropVariantToFileTimeVector para acessar um valor de vetor FILETIME em um PROPVARIANT.
// PROPVARIANT propvar;
// Assume the variable propvar is initialized and valid
FILETIME rgTimes[4]; // The application is expecting propvar to hold 4 FILETIMEs in a vector
ULONG cTimes;
HRESULT hr = PropVariantToFileTimeVector(propvar, rgTime, ARRAYSIZE(rgTime), &cTimes);
if (SUCCEEDED(hr))
{
if (cTimes == ARRAYSIZE(rgTime))
{
// The application got 4 FILETIMEs which are now stored in rgTime
}
else
{
// The application got cTimes which are stored in the first cTimes elements of rgTime
}
}
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 |