Partager via


Localisation des propriétés statiques

Vous pouvez localiser des propriétés statiques à l’aide de mappages de valeurs partiels.

La procédure suivante décrit comment les propriétés statiques peuvent être localisées à l’aide de mappages de valeurs partiels avec des expressions régulières.

Pour utiliser des mappages de valeurs pour localiser des propriétés statiques

  1. Créez un fichier MOF principal (Mastervm.mof).

    L’exemple de code suivant peut être utilisé pour créer un fichier MOF principal (Mastervm.mof).

    [Locale(0x409)]
    class Group1
    {
        [key] string ID;
        [DisplayName("Numbers"),
            ValueMap{0,1,2,3}:amended,
            Values{"Zero", "One", "Two", "Three"}:amended]
        Uint32 Numbers;
    };
    
  2. Créez les versions indépendante de la langue et spécifique à la langue du fichier MOF.

    Tapez la commande suivante à l’invite de commandes pour créer les versions indépendante de la langue et spécifique à la langue du fichier MOF.

    mofcomp -MOF:LnVm.mof -MFL:LsVm.mfl -Amendment:MS_409 MasterVm.mof
    

    Le compilateur MOF génère les fichiers MOF indépendant de la langue et spécifique à la langue, LnVm.mof et LsVm.mfl. La valeur pour l’anglais américain de la propriété Numbers est placée dans le fichier .mfl de l’espace de noms anglais américain.

    L’exemple de code suivant montre le contenu du fichier LsVm.mfl.

    #pragma namespace("\\\\.\\root\\default")
    instance of __namespace{ name="ms_409";};
    #pragma namespace("\\\\.\\root\\default\\ms_409")
    
    [AMENDMENT, LOCALE(0x409)] 
    class Group1
    {
      [ValueMap{0, 1, 2, 3} : Amended,
          Values{"Zero", "One", "Two", "Three"} : Amended] 
      Uint32 Numbers;
    };
    
  3. Compilez les deux fichiers MOF et stockez les informations de classe dans le référentiel CIM.

    Tapez la commande suivante à l’invite de commandes pour compiler les deux fichiers MOF.

    Mofcomp LnVm.mof 
    Mofcomp LsVm.mfl
    
  4. Localisez le fichier MFL pour d’autres paramètres régionaux.

    L’exemple de code suivant montre le contenu d’un fichier MFL pour l’espace de noms français.

    #pragma namespace("\\\\.\\root\\default")
    instance of __namespace{ name="ms_40C";};
    #pragma namespace("\\\\.\\root\\default\\ms_40C")
    
    [AMENDMENT, LOCALE(0x40C)] 
    class Group1
    {
        [key] string ID;
        [ValueMap{0, 1, 2, 3} : Amended,
            Values{"Zero", "Un", "Deux", "Trois"} : Amended]
        Uint32 Numbers;
    };
    

Le résultat net est que le nom d’affichage et la valeur de la propriété Numbers dépendent des paramètres régionaux de l’utilisateur connecté. Si l’utilisateur spécifie des paramètres régionaux qui n’ont pas été fournis, les données de qualificateur par défaut proviennent de l’espace de noms anglais (ms_409).

Cette conception implique que chaque valeur de chaîne est utilisée comme identificateur de recherche, qui ne peut pas être localisé. Lorsque vous définissez ce schéma, vous devez vous assurer que la valeur introduite par le fournisseur est indépendante des paramètres régionaux.

Notes

WMI ne fournit pas actuellement la prise en charge au moment de l’exécution pour le mappage des valeurs aux chaînes définies par les qualificateurs. L’interprétation de la syntaxe suggérée incombe à l’application.