Partager via


énumération CF_HYDRATION_POLICY_MODIFIER (cfapi.h)

Permet à un fournisseur de synchronisation de contrôler la façon dont les fichiers d’espace réservé doivent être hydratés par la plateforme. Il s’agit d’un modificateur qui peut être utilisé avec la stratégie principale : CF_HYDRATION_POLICY_PRIMARY.

Syntax

typedef enum CF_HYDRATION_POLICY_MODIFIER {
  CF_HYDRATION_POLICY_MODIFIER_NONE,
  CF_HYDRATION_POLICY_MODIFIER_VALIDATION_REQUIRED,
  CF_HYDRATION_POLICY_MODIFIER_STREAMING_ALLOWED,
  CF_HYDRATION_POLICY_MODIFIER_AUTO_DEHYDRATION_ALLOWED,
  CF_HYDRATION_POLICY_MODIFIER_ALLOW_FULL_RESTART_HYDRATION
} ;

Constantes

 
CF_HYDRATION_POLICY_MODIFIER_NONE
0x0000

Aucun modificateur de stratégie.
CF_HYDRATION_POLICY_MODIFIER_VALIDATION_REQUIRED
0x0001

Ce modificateur de stratégie offre deux garanties à un fournisseur de synchronisation. Tout d’abord, il garantit que les données retournées par le fournisseur de synchronisation sont toujours conservées sur le disque avant d’être retournées à l’application utilisateur. Deuxièmement, il permet au fournisseur de synchronisation de récupérer les mêmes données qu’il a retournées précédemment à la plateforme et de valider leur intégrité. Ce n’est qu’une fois l’intégrité confirmée par le fournisseur de synchronisation que la plateforme termine la demande d’E/S de l’utilisateur. Ce modificateur permet de prendre en charge l’intégrité des données de bout en bout au prix d’E/S de disque supplémentaires.
CF_HYDRATION_POLICY_MODIFIER_STREAMING_ALLOWED
0x0002

Ce modificateur de stratégie accorde à la plateforme l’autorisation de ne stocker aucune donnée retournée par un fournisseur de synchronisation sur des disques locaux. Ce modificateur de stratégie est inefficace lorsqu’il est combiné avec CF_HYDRATION_POLICY_MODIFIER_VALIDATION_REQUIRED.
CF_HYDRATION_POLICY_MODIFIER_AUTO_DEHYDRATION_ALLOWED
0x0004

Ce modificateur de stratégie accorde à la plateforme l’autorisation de déshydrater les espaces réservés de fichiers cloud synchronisés sans l’aide des fournisseurs de synchronisation. Sans cet indicateur, la plateforme n’est pas autorisée à appeler CfDehydratePlaceholder directement. Au lieu de cela, la seule façon prise en charge de déshydrater un espace réservé de fichier cloud consiste à effacer l’attribut épinglé du fichier et à définir l’attribut non épinglé du fichier. À ce stade, la déshydratation réelle est effectuée de manière asynchrone par le moteur de synchronisation après avoir reçu la notification de changement d’annuaire sur les deux attributs. Lorsque cet indicateur est spécifié, la plateforme est autorisée à appeler CfDehydratePlaceholder directement sur n’importe quel espace réservé de fichier cloud synchronisé. Il est recommandé pour les fournisseurs de synchronisation de prendre en charge la déshydratation automatique.

REMARQUE

Cette valeur est disponible dans Windows 10, version 1803 et ultérieure.

CF_HYDRATION_POLICY_MODIFIER_ALLOW_FULL_RESTART_HYDRATION
0x0008

Ce modificateur de stratégie accorde à la plateforme l’autorisation d’hydrater entièrement un fichier de manière synchrone lorsqu’il intercepte une tentative d’analyse du fichier par un filtre AV. Les fournisseurs de synchronisation qui souhaitent utiliser RestartHydration pour modifier le fileSize à partir d’un rappel FetchData doivent accepter la ALLOW_FULL_RESTART_HYDRATION stratégie afin d’éviter les blocages possibles avec les logiciels antivirus et anti-programme malveillant qui tentent d’analyser le fichier et le fournisseur qui tente de modifier fileSize à l’aide de RestartHydration.

REMARQUE

Cette mise à jour d’énumération est prise en charge uniquement si le PlatformVersion.IntegrationNumber obtenu à partir de CfGetPlatformInfo est 0x500 ou supérieur.

Remarques

En général, les modificateurs peuvent être mixtes et mis en correspondance avec n’importe quelle stratégie principale (CF_HYDRATION_POLICY_PRIMARY) et d’autres modificateurs de stratégie tant que la combinaison n’est pas en conflit automatique.

L’indicateur CF_HYDRATION_POLICY_MODIFIER_ALLOW_FULL_RESTART_HYDRATION est ajouté pour éviter que la fonctionnalité Redémarrer l’hydratation ne rencontre des interblocages provoqués par des détecteurs antivirus et de programmes malveillants (AV). Tous les fournisseurs de synchronisation qui ont l’intention de mettre à jour la taille de fichier d’un fichier déshydraté au cours d’une demande d’hydratation doivent accepter cette fonctionnalité ou redémarrer l’hydratation peuvent se trouver dans un interblocage lorsqu’un antivirus tente d’analyser un fichier en cours d’ouverture en créant une section mappée en mémoire du fichier, ce qui entraîne une hydratation. Notez que les fournisseurs qui gèrent des instantanés ou des versions d’un fichier et répondent à la demande d’un utilisateur en fournissant la version demandée du fichier, même si le fichier a été mis à jour dans le serveur principal/serveur, n’ont pas besoin d’opter pour cette stratégie. De même, les fournisseurs qui échouent à la demande d’hydratation au cas où le fichier a changé dans le back-end peuvent ne pas accepter cette stratégie.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 1709 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2016 (applications de bureau uniquement)
En-tête cfapi.h

Voir aussi

CF_HYDRATION_POLICY_PRIMARY

CfDehydratePlaceholder

CfGetPlatformInfo