Compilation de fichiers MOF localisés

Vous devez compiler votre fichier MOF master pour créer les fichiers MOF spécifiques à la langue et à la langue.

Tapez la commande suivante à l’invite de commandes pour compiler un fichier MOF master.

mofcomp -MOF:Lnmof.mof -MFL:Lsmof.mfl -Amendment:MS_409 Mastermof.mof

Lorsque vous exécutez cette commande, le compilateur MOF crée deux fichiers MOF à partir du fichier Mastermof.mof d’origine. Le compilateur MOF produit une version non linguistique, Lnmof.mof, dans laquelle tous les éléments spécifiques au langage sont supprimés. Une deuxième version spécifique au langage, Lsmof.mof, est également créée ; ce fichier contient uniquement les éléments qui ont été marqués avec le type de qualificateur modifié dans le fichier Mastermof.mof.

L’exemple de code suivant montre le contenu du fichier MOF sans langue (Lnmof.mof) généré.

#pragma namespace("\\\\.\\root")

Instance of __Namespace
{
  Name = "TEST";
};
#pragma namespace("\\\\.\\root\\TEST")

[LOCALE(1033)] 
class myclass
{
  [key] string Name;
  uint64 Value;
  uint64 Timestamp;
};

L’exemple de code suivant montre le contenu du fichier MOF spécifique au langage (Lsmof.mfl) généré.

#pragma namespace("\\\\.\\root\\TEST")
instance of __namespace{ name="ms_409";};
#pragma namespace("\\\\.\\root\\TEST\\ms_409")

[Description("Localized version of MyClass for American English") :
    Amended, LOCALE(0x409)] 

class myclass
{
    [DisplayName("User Name") : Amended,
    Description("The Name property contains the name of the user") : 
    Amended, key]
     string Name;

    [DisplayName("Time Stamp") : Amended,
    Description("This property shows when the object was created") : 
    Amended] 
     uint64 Timestamp;
};

La compilation d’un fichier MOF avec le qualificateur Modifié génère uniquement des fichiers MOF distincts, non linguistiques et spécifiques à la langue ; le référentiel CIM n’est pas mis à jour avec les nouvelles informations de classe. Vous devez utiliser le compilateur MOF pour compiler les deux fichiers MOF générés par la première compilation avant que les informations de classe soient disponibles pour WMI.

Lorsque vous compilez un fichier MOF master, seuls les qualificateurs avec le type Modifié sont déplacés vers le fichier MOF spécifique à la langue. Les qualificateurs qui n’ont pas le type Modifié ne sont pas localisés et n’existent que dans la définition de classe de base dans le fichier MOF sans langue. Les qualificateurs non localisés peuvent être utilisés pour les descriptions par défaut si les descriptions localisées ne sont pas disponibles.

Vous pouvez utiliser la commande pragma amendment au lieu de spécifier Modifié comme commutateur vers le compilateur MOF. L’une ou l’autre de ces options équivaut à demander des versions spécifiques à la langue et non linguistiques d’un fichier MOF. Si vous utilisez la commande pragma amendment ou l’option de ligne de commande Modifiée, vous devez spécifier le nom des fichiers de sortie à l’aide des options -MFL et -MOF à l’invite de commandes.

Notes

Le fichier MOF indépendant du langage généré par le compilateur MOF contient l’équivalent décimal de l’ID de paramètres régionaux, même si cette valeur a été entrée en hexadécimal. Dans l’exemple ci-dessus, le compilateur a converti la valeur 0x409 en nombre décimal 1033 pour le fichier de sortie Lnmof.mof.