<!-- Первый комментарий -->
или
<comment>
Второй комментарий
</comment>
Элементы <?xml?> и <![CDATA[]]>
Напомним, что эти элементы являются стандартными для разметки W3C XML 1.0 (см. главу 3). Для того чтобы использовать символы кириллицы в файлах компонентов-сценариев, нужно обязательно в элементе <?xml?> указать атрибут encoding со значением, соответствующим используемой кодировке, например:
<?xml version="1.0" encoding="windows-1251"?>
Элемент <package>
Этот элемент необходим в тех WSC-файлах, в которых с помощью элементов <component> определено более одного компонента. В этом случае <package> является контейнером для элементов <component>.
Если же в WSC-файле описан только один компонент, то элемент <package> можно не использовать.
Элемент <component>
Внутри элемента <component> описывается один компонент-сценарий (СОМ-объект). Необязательный атрибут id определяет идентификатор объекта (это может понадобиться в том случае, когда в одном WSC-файле находится несколько СОМ-объектов).
Элемент <registration>
В элементе <registration> приводится информация, которая необходима для регистрации в системе компонента-сценария в качестве СОМ-объекта.
Атрибуты progid и classid задают соответственно программный идентификатор и глобальный код, с помощью которых компонент-сценарий может быть использован в других приложениях (например, progid="MyClass.MyObject" и classid="{424ac2bc-5732-4dea-be17-0211af99cd79}"). Из этих двух атрибутов обязательно должен быть указан хотя бы один (можно указать и оба). Если в элементе <registration> приведен только атрибут progid, то глобальный код (GUID) для описываемого объекта будет сгенерирован автоматически при регистрации объекта в системе. Рекомендуется, однако, явно указывать глобальный код объекта, т.к. в противном случае этот код может оказаться различным при регистрации объекта на разных машинах.
Глобальный код объекта может быть сгенерирован с помощью описанной ниже программы Windows Script Component Wizard.
С помощью атрибута description можно задать краткое описание объекта, которое будет занесено в системный реестр при регистрации объекта.
Атрибут version позволяет указать номер версии описываемого объекта. Этот номер позволяет запрашивать из приложения определенную версию СОМ-объекта (он должен быть указан через точку после программного идентификатора объекта, например "Myclass.MyObject.1").
С помощью элемента <script> внутри контейнера <registration> можно указать две функции, одна из которых будет вызываться при регистрации объекта в системе (эта функция должна иметь имя Register()), а другая — при удалении объекта из системы (эта функция должна иметь имя Unregister()).
Элемент <public>
В элементе <public> описываются те свойства, методы и события объекта, которые после его регистрации будут доступны извне другим приложениям (клиентам автоматизации). Другими словами, этот элемент является контейнером для элементов <property>, <method> и <event>.
Элемент <property>
Элемент <property> объявляет свойство СОМ-объекта, которое будет доступно для клиентов автоматизации.
Атрибут name определяет имя этого свойства (в дальнейшем внутри элемента <script> должна быть объявлена глобальная переменная с тем же именем, с помощью которой можно будет изменять значение свойства). Объявляемое свойство может быть доступно либо только для чтения (внутри контейнера <property> указан только элемент <get>), либо только для записи (внутри <property> указан только элемент <put>), либо и для чтения и для записи (внутри <property> указаны как элемент <get>, так и элемент <put>).
Атрибут internalName в элементах <get> и <put> задает имена функций, которые будут использоваться для чтения и записи свойства соответственно (эти функции описываются внутри контейнера <script>). Если же атрибут internalName не указан, то чтение (запись) свойства производится в функции с именем get_PropertyName(put_PropertуName), где PropertyName — имя свойства (атрибут <name>).