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

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

La procédure suivante explique comment déclarer un 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 de mots clés suivie du nom de classe, des accolades et d’un point-virgule.

    L'exemple suivant montre comment déclarer une instance de la classe.

    instance of ClassName
    {
    };
    
  2. Lorsque vous avez 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 un instance est créé a une ou plusieurs propriétés de clé. Vous ne pouvez pas créer un instance avec plus de 256 clés.

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

Étant donné que WMI tape fortement les propriétés, vous ne pouvez pas modifier les types de propriétés. Vous pouvez toutefois définir des valeurs de propriété dans les 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 instance.

La procédure suivante explique 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 la propriété.

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

    WMI n’exige pas que vous définissiez une propriété pendant la création d’instance. L’exception est toute 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é à mesure que vous les rencontrez. En revanche, vous ne devez pas définir une 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. Lorsque vous avez 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 les données des 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.