Método IPreviousVersionsInfo::AreSnapshotsAvailable (shobjidl.h)
Consulta a disponibilidade de uma imagem de volume do Windows Server 2003 registrada pelo sistema em um momento anterior.
Sintaxe
HRESULT AreSnapshotsAvailable(
[in] LPCWSTR pszPath,
[in] BOOL fOkToBeSlow,
[out] BOOL *pfAvailable
);
Parâmetros
[in] pszPath
Tipo: LPCWSTR
Uma cadeia de caracteres Unicode terminada em nulo que contém o caminho totalmente qualificado para um arquivo ou pasta no volume em questão.
[in] fOkToBeSlow
Tipo: BOOL
Um valor booliano que especifica se um servidor deve ser contatado para determinar a disponibilidade de imagens de volume armazenadas. Para obter mais detalhes, consulte a seção Comentários.
TRUE
Entre em contato com o servidor se os resultados ainda não estiverem armazenados em cache.
FALSE
Não entre em contato com o servidor. Em vez disso, use os resultados armazenados em cache.
[out] pfAvailable
Tipo: BOOL*
Um ponteiro para uma variável booliana que contém o resultado. Esse valor será válido somente se a chamada de método for bem-sucedida; caso contrário, ele é indefinido.
TRUE
Pelo menos uma imagem armazenada do volume em que o arquivo ou pasta nomeada em pszPath reside está disponível.
FALSE
Nenhuma imagem de volume é armazenada.
Valor retornado
Tipo: HRESULT
Retorna valores de erro padrão, incluindo, mas não se limitando a, o seguinte:
Código de retorno | Descrição |
---|---|
|
Êxito. |
|
fOkToBeSlow é FALSE e o resultado não está armazenado em cache no momento. |
Comentários
Se IPreviousVersionsInfo::AreSnapshotsAvailable for chamado em um arquivo ou pasta, o resultado não indicará que as informações de reversão estão disponíveis para esse arquivo ou pasta específico, apenas que um instantâneo de todo o volume está disponível. Esse resultado é armazenado em cache e chamadas subsequentes que consultam qualquer coisa armazenada nesse mesmo volume acessam os resultados armazenados em cache, com pouca sobrecarga de desempenho, em vez de reconiciar o servidor.
Depois que a resposta do servidor é armazenada em cache na memória, as chamadas subsequentes não entram em contato com o servidor mesmo que fOkToBeSlow seja TRUE. Se fOkToBeSlow for FALSE e a resposta do servidor ainda não estiver armazenada em cache de uma chamada anterior, o método retornará E_PENDING. Nesse caso, defina fOkToBeSlow como TRUE e chame IPreviousVersionsInfo::AreSnapshots Disponível novamente para entrar em contato com o servidor.
Para melhorar o desempenho, um thread de interface do usuário que chama esse método deve sempre definir fOkToBeSlow como FALSE. Se o método retornar E_PENDING, siga estas etapas.
- Crie outra instância de IPreviousVersionsInfo em um thread em segundo plano.
- Chame IPreviousVersionsInfo::AreSnapshots Disponível com fOkToBeSlow definido como TRUE.
- Sinalize o thread da interface do usuário original para chamar IPreviousVersionsInfo::AreSnapshots Disponível novamente. Em seguida, os resultados são extraídos do cache.
Requisitos
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | shobjidl.h |
DLL | Twext.dll (versão 5.2 ou posterior) |