Localiser des propriétés statiques

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

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

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

  1. Créez un fichier MOF maître (Mastervm. MOF).

    L’exemple de code suivant peut être utilisé pour créer un fichier MOF maître (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épendantes de la langue et spécifiques à la langue du fichier MOF.

    Tapez la commande suivante à l’invite de commandes pour créer les versions indépendantes de la langue et de 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 propres au langage et aux langages, LnVm. mof et LsVm. mfl. Les valeurs de l’anglais américain pour la propriété numbers sont placées dans le fichier. MFL pour l’espace de noms anglais américain.

    L’exemple de code suivant affiche 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).

L’implication de cette conception est 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 que le fournisseur place dans 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 est la responsabilité de l’application.