Поделиться через


Создание экземпляра с помощью MOF

Можно объявить базовый экземпляр класса в службе управления Windows с помощью формата управляемого объекта (MOF). Можно также переопределить значения по умолчанию для экземпляра. Дополнительные сведения см. в разделе Настройка значения свойства экземпляра.

В следующей процедуре описывается объявление базового экземпляра класса с помощью кода MOF.

Объявление базового экземпляра класса с помощью кода MOF

  1. Используйте ключевые слова и, после которых должно идти имя класса, фигурные скобки и точка с запятой.

    В следующем примере кода показано, как объявить экземпляр класса.

    instance of ClassName
    {
    };
    
  2. По завершении вставьте код MOF в репозиторий WMI с помощью компилятора MOF.

    Дополнительные сведения см. в разделе о компиляции MOF-файлов.

Экземпляр класса включает все свойства класса. Если класс является производным, экземпляры включают свойства, принадлежащие всем классам выше в иерархии. Каждый класс, из которого создается экземпляр, имеет одно или несколько ключевых свойств. Невозможно создать экземпляр с более чем 256 ключами.

Установка значения свойства экземпляра

Поскольку свойства WMI строго типизированы, нельзя изменять их типы. Можно, однако, установить значения свойств в экземплярах. Когда класс назначает значение по умолчанию свойству, WMI назначает значение по умолчанию каждому экземпляру. Вы можете изменить это значение в объявлении объекта.

В следующей процедуре описывается, как задать значение свойства или перезаписать значение по умолчанию с помощью кода MOF.

Чтобы задать значение свойства или перезаписать значение по умолчанию с помощью кода MOF

  1. Разместите инструкцию присваивания между фигурными скобками объявления экземпляра.

    В следующем примере кода показано, как задать значение свойства.

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

    WMI не требует задания любого свойства во время создания экземпляра. Исключение составляет любое свойство, помеченное квалификатором Key. Так как WMI использует ключевые свойства для уникальной идентификации экземпляров, необходимо задать все ключевые свойства при их обнаружении. В отличие от этого, нельзя задать системное свойство в объявлении экземпляра. Вместо этого WMI назначает соответствующие значения системным свойству при необходимости.

  2. По завершении вставьте код MOF в репозиторий WMI с вызовом компилятора MOF.

    Дополнительные сведения см. в компиляции файлов MOF.

В следующих примерах кода показано, как экземпляр задает данные для свойств, определенных классом.

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

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

В предыдущем примере класс определяет три свойства: символьную строку, 32-разрядное целое число со знаком и 32-разрядное целое число без знака. Экземпляр предоставляет значения данных для каждого из этих свойств.