CLFS_MGMT_POLICY structure (wdm.h)

La structure CLFS_MGMT_POLICY contient une description d’une stratégie pour la gestion d’un journal CLFS.

Syntaxe

typedef struct _CLFS_MGMT_POLICY {
  ULONG                 Version;
  ULONG                 LengthInBytes;
  ULONG                 PolicyFlags;
  CLFS_MGMT_POLICY_TYPE PolicyType;
  union {
    struct {
      ULONG Containers;
    } MaximumSize;
    struct {
      ULONG Containers;
    } MinimumSize;
    struct {
      ULONG SizeInBytes;
    } NewContainerSize;
    struct {
      ULONG AbsoluteGrowthInContainers;
      ULONG RelativeGrowthPercentage;
    } GrowthRate;
    struct {
      ULONG MinimumAvailablePercentage;
      ULONG MinimumAvailableContainers;
    } LogTail;
    struct {
      ULONG Percentage;
    } AutoShrink;
    struct {
      ULONG Enabled;
    } AutoGrow;
    struct {
      USHORT PrefixLengthInBytes;
      WCHAR  PrefixString[1];
    } NewContainerPrefix;
    struct {
      ULONGLONG NextContainerSuffix;
    } NewContainerSuffix;
    struct {
      USHORT ExtensionLengthInBytes;
      WCHAR  ExtensionString[1];
    } NewContainerExtension;
  } PolicyParameters;
} CLFS_MGMT_POLICY, *PCLFS_MGMT_POLICY;

Membres

Version

Version de la structure CLFS_MGMT_POLICY . Définissez cette valeur sur CLFS_MGMT_POLICY_VERSION.

LengthInBytes

Longueur de la structure CLFS_MGMT_POLICY .

PolicyFlags

Les indicateurs qui s’appliquent à cette instance de la structure CLFS_MGMT_POLICY. Le seul indicateur qui a été implémenté pour cette version est LOG_POLICY_OVERWRITE, ce qui indique que lorsque la stratégie est installée, elle remplace la stratégie du même type, si une telle stratégie existe déjà.

PolicyType

Valeur de l’énumération CLFS_MGMT_POLICY_TYPE qui fournit le type de cette instance de la structure CLFS_MGMT_POLICY.

PolicyParameters

Union qui fournit les informations détaillées sur cette instance de la structure CLFS_MGMT_POLICY.

PolicyParameters.MaximumSize

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyMaximumSize.

PolicyParameters.MaximumSize.Containers

Nombre maximal de conteneurs que le journal utilisera.

PolicyParameters.MinimumSize

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyMinimumSize.

PolicyParameters.MinimumSize.Containers

Nombre minimal de conteneurs que le journal utilisera.

PolicyParameters.NewContainerSize

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyNewContainerSize.

PolicyParameters.NewContainerSize.SizeInBytes

Taille de chacun des conteneurs du journal.

PolicyParameters.GrowthRate

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyGrowthRate.

PolicyParameters.GrowthRate.AbsoluteGrowthInContainers

Nombre de conteneurs qui doivent être ajoutés lorsque la taille du journal est augmentée. Si le membre RelativeGrowthPercentage est différent de zéro, AbsoluteGrowthInContainers doit être égal à zéro.

PolicyParameters.GrowthRate.RelativeGrowthPercentage

Pourcentage par lequel la taille du journal doit augmenter lorsque le journal augmente, exprimé sous la forme d’un nombre compris entre zéro et 100. Par exemple, si le journal se composait de 32 conteneurs et que RelativeGrowthPercentage était dix, alors, lorsque le journal devait croître, il augmenterait de trois conteneurs (32 * 10 %, arrondi à l’entier le plus proche). Si le membre AbsoluteGrowthInContainers est différent de zéro, RelativeGrowthPercentage doit être égal à zéro.

PolicyParameters.LogTail

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyLogTail.

PolicyParameters.LogTail.MinimumAvailablePercentage

Lorsque la gestion CLFS avertit le client de déplacer sa fin de journal, elle spécifie que la fin doit être déplacée vers un LSN qui laisse au moins MinimumAvailablePercentage pour cent du journal libre. Si le membre MinimumAvailableContainers est différent de zéro, MinimumAvailablePercentage doit être égal à zéro.

PolicyParameters.LogTail.MinimumAvailableContainers

Lorsque la gestion CLFS avertit le client de déplacer sa fin de journal, elle spécifie que la fin doit être déplacée vers un LSN qui laisse au moins les conteneurs MinimumAvailableContainers libres. Si le membre MinimumAvailablePercentage est différent de zéro, MinimumAvailableContainers doit être égal à zéro.

PolicyParameters.AutoShrink

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyAutoShrink.

PolicyParameters.AutoShrink.Percentage

Lorsque le pourcentage d’espace libre dans le journal atteint Pourcentage, le journal se réduit. Le pourcentage étant exprimé sous la forme d’un nombre compris entre 0 et 100, une valeur de 25 signifierait 25 pour cent.

PolicyParameters.AutoGrow

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyAutoGrow.

PolicyParameters.AutoGrow.Enabled

Valeur numérique qui détermine si la croissance automatique des journaux est activée. Toute valeur différente de zéro permet une croissance automatique.

PolicyParameters.NewContainerPrefix

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyNewContainerPrefix.

PolicyParameters.NewContainerPrefix.PrefixLengthInBytes

Longueur, en octets, du membre PrefixString .

PolicyParameters.NewContainerPrefix.PrefixString[1]

Chaîne à caractères larges qui contient le chemin d’accès complet au répertoire où se trouvent les conteneurs du journal, ainsi qu’un préfixe qui sera utilisé dans le nom de fichier de chaque conteneur dans le journal.

PolicyParameters.NewContainerSuffix

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyNewContainerSuffix.

PolicyParameters.NewContainerSuffix.NextContainerSuffix

Numéro à utiliser comme suffixe du nom de fichier pour le conteneur suivant dans le journal. Pour former le nom de fichier, le nombre est converti en chaîne de chiffres décimaux et ajouté à la chaîne de préfixe. Le nombre est incrémenté pour le nom de fichier de chaque conteneur suivant.

PolicyParameters.NewContainerExtension

Structure qui fournit les informations détaillées sur une stratégie dont PolicyType est ClfsMgmtPolicyNewContainerExtension.

PolicyParameters.NewContainerExtension.ExtensionLengthInBytes

Longueur, en octets, du membre ExtensionString .

PolicyParameters.NewContainerExtension.ExtensionString[1]

Chaîne à caractères larges qui contient l’extension du nom de fichier pour chaque conteneur dans le journal. Les noms de fichiers de conteneur sont générés à l’aide du format [préfixe][suffixe][.extension]. Une extension est facultative. L’extension par défaut est la chaîne vide.

Remarques

La façon dont une structure CLFS_MGMT_POLICY est interprétée dépend du type de stratégie qu’elle contient.

Vous pouvez fournir des stratégies qui spécifient la façon dont le journal sera géré. Chaque stratégie est une instance de la structure CLFS_MGMT_POLICY, mais la structure est interprétée différemment en fonction du type de stratégie. CLFS utilise les informations que vous avez fournies dans les stratégies pour adapter la façon dont il gère le journal.

Lorsque vous créez une structure CLFS_MGMT_POLICY dont PolicyType est ClfsMgmtPolicyNewContainerPrefix, veillez à allouer suffisamment d’espace pour contenir la chaîne PolicyParameters.NewContainerPrefix.PrefixString .

Vous pouvez uniquement installer une stratégie dont le type de stratégie spécifié dans la valeur PolicyType est ClfsMgmtPolicyNewContainerSize avant qu’il y ait des conteneurs dans le journal. Vous pouvez modifier d’autres stratégies une fois que le journal existe.

Configuration requise

Condition requise Valeur
En-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)

Voir aussi

CLFS_MGMT_POLICY_TYPE

ClfsMgmtInstallPolicy

ClfsMgmtQueryPolicy

ClfsMgmtRemovePolicy