Création d’une instance à l’aide de MOF

Vous pouvez déclarer une instance de base d’une classe dans le service gestion Windows à l’aide du format MOF (Managed Object Format). Vous pouvez également remplacer les valeurs par défaut d’une instance. Pour plus d’informations, consultez Définition d’une valeur de propriété d’instance.

La procédure suivante explique comment déclarer une instance de base d’une classe à l’aide du code MOF.

Pour déclarer une instance de base d’une classe à l’aide du code MOF

  1. Utilisez l’instance des mots clés suivi du nom de classe, des accolades et un point-virgule.

    L’exemple de code suivant montre comment déclarer une instance d’une classe.

    instance of ClassName
    {
    };
    
  2. Une fois terminé, insérez votre code MOF dans le référentiel WMI à l’aide du compilateur MOF.

    Pour plus d’informations, consultez Compilation de fichiers MOF.

Une instance d’une classe inclut toutes les propriétés de la classe. Si la classe est une classe dérivée, les instances incluent les propriétés appartenant à toutes les classes supérieures dans la hiérarchie. Chaque classe à partir de laquelle une instance est créée a une ou plusieurs propriétés de clé. Vous ne pouvez pas créer une instance avec plus de 256 clés.

Définition d’une valeur de propriété d’instance

Comme les propriétés WMI fortement types, vous ne pouvez pas modifier les types de propriétés. Toutefois, vous pouvez définir des valeurs de propriété dans des instances. Lorsqu’une classe affecte une valeur par défaut à une propriété, WMI affecte la valeur par défaut à chaque instance. Vous pouvez remplacer cette valeur dans votre déclaration d’instance.

La procédure suivante décrit comment définir une valeur de propriété ou remplacer une valeur par défaut à l’aide du code MOF.

Pour définir une valeur de propriété ou remplacer une valeur par défaut à l’aide du code MOF

  1. Placez une instruction d’affectation entre les accolades de la déclaration d’instance.

    L’exemple de code suivant montre comment définir une valeur de propriété.

    instance of ClassName
    {
        Prop = "value";
    };
    

    WMI ne nécessite pas que vous définissez une propriété lors de la création de l’instance. L’exception est n’importe quelle propriété marquée avec le qualificateur de clé . Étant donné que WMI utilise des propriétés de clé pour identifier de manière unique les instances, vous devez définir toutes les propriétés de clé comme vous les rencontrez. En revanche, vous ne devez pas définir de propriété système dans une déclaration d’instance. Au lieu de cela, WMI affecte les valeurs appropriées à une propriété système si nécessaire.

  2. Une fois terminé, insérez votre code MOF dans le référentiel WMI avec un appel au compilateur MOF.

    Pour plus d’informations, consultez Compilation de fichiers MOF.

Les exemples de code suivants montrent comment une instance spécifie des données pour les propriétés définies par une classe.

class MyClass 
{
    [key] string   strProp;
    sint32   dwProp1;
    uint32       dwProp2;
};

instance of MyClass 
{
    strProp = "hello";
    dwProp1 = -1;
    dwProp2 = 0xffffffff;
};

Dans l’exemple précédent, la classe définit trois propriétés : une chaîne de caractères, un entier signé 32 bits et un entier non signé 32 bits. L’instance fournit des valeurs de données pour chacune de ces propriétés.