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.
[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 |
---|---|
|
Réussite. |
|
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) |