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.

Nota Atualmente, há suporte apenas para caminhos para arquivos e pastas armazenados em um volume do Windows Server 2003.
 

[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
S_OK
Êxito.
E_PENDING
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)