Partager via


IPreviousVersionsInfo::AreSnapshotsAvailable, méthode (shobjidl.h)

Requêtes pour la disponibilité d’une image de volume Windows Server 2003 enregistrée par le système à un moment antérieur.

Syntaxe

HRESULT AreSnapshotsAvailable(
  [in]  LPCWSTR pszPath,
  [in]  BOOL    fOkToBeSlow,
  [out] BOOL    *pfAvailable
);

Paramètres

[in] pszPath

Type : LPCWSTR

Chaîne Unicode terminée par un caractère Null contenant le chemin complet d’un fichier ou d’un dossier sur le volume en question.

Note Seuls les chemins d’accès aux fichiers et dossiers stockés sur un volume Windows Server 2003 sont actuellement pris en charge.
 

[in] fOkToBeSlow

Type : BOOL

Valeur booléenne spécifiant si un serveur doit être contacté pour déterminer la disponibilité des images de volume stockées. Pour plus d’informations, consultez la section Remarques.

TRUE

Contactez le serveur si les résultats ne sont pas déjà mis en cache.

FALSE

Ne contactez pas le serveur. Utilisez les résultats mis en cache à la place.

[out] pfAvailable

Type : BOOL*

Pointeur vers une variable booléenne contenant le résultat. Cette valeur est valide uniquement si l’appel de méthode réussit ; sinon, elle n’est pas définie.

TRUE

Au moins une image stockée du volume où réside le fichier ou dossier nommé dans pszPath est disponible.

FALSE

Aucune image de volume n’est stockée.

Valeur retournée

Type : HRESULT

Retourne les valeurs d’erreur standard, y compris, mais sans s’y limiter, les éléments suivants :

Code de retour Description
S_OK
Réussite.
E_PENDING
fOkToBeSlow a la valeur FALSE et le résultat n’est pas actuellement mis en cache.

Remarques

Si IPreviousVersionsInfo::AreSnapshotsAvailable est appelé sur un fichier ou un dossier, le résultat n’indique pas que les informations de restauration sont disponibles pour ce fichier ou dossier spécifique, mais simplement qu’une instantané du volume entier est disponible. Ce résultat est mis en cache et les appels suivants qui demandent des informations sur tout ce qui est stocké sur ce même volume accèdent aux résultats mis en cache(avec peu de surcharge de performances) au lieu de recontacter le serveur.

Une fois la réponse du serveur mise en cache en mémoire, les appels suivants ne contactent pas le serveur même si fOkToBeSlow a la valeur TRUE. Si fOkToBeSlow a la valeur FALSE et que la réponse du serveur n’est pas déjà mise en cache à partir d’un appel précédent, la méthode retourne E_PENDING. Dans ce cas, définissez fOkToBeSlow sur TRUE et appelez à nouveau IPreviousVersionsInfo::AreSnapshotsAvailable pour contacter le serveur.

Pour de meilleures performances, un thread d’interface utilisateur appelant cette méthode doit toujours définir fOkToBeSlow sur FALSE. Si la méthode retourne E_PENDING, procédez comme suit.

  • Créez une autre instance de IPreviousVersionsInfo sur un thread d’arrière-plan.
  • Appelez IPreviousVersionsInfo::AreSnapshotsAvailable avec fOkToBeSlow défini sur TRUE.
  • Signalez le thread d’interface utilisateur d’origine pour appeler À nouveau IPreviousVersionsInfo::AreSnapshotsAvailable . Les résultats sont ensuite extraits du cache.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête shobjidl.h
DLL Twext.dll (version 5.2 ou ultérieure)