Элемент <reference>
Элемент <reference>
При вызове многих методов внешних объектов, которые используются внутри сценариев, требуется указывать различные числовые или строковые константы, определенные в этих внешних объектах. Например, для того, чтобы открыть текстовый файл с помощью метода OpenTextFile объекта FileSystemObject, может потребоваться указать параметр, который определяет режим ввода/вывода (возможные значения констант ForReading=1, ForWriting=2 и ForAppending=8) открываемого файла. Ясно, что запомнить все значения констант различных объектов очень трудно, поэтому при их использовании приходится постоянно обращаться к справочной информации.
К счастью, большинство объектов предоставляет информацию об именах используемых ими констант в своей библиотеке типов (как уже отмечалось в главе 2, библиотека типов регистрируется в системном реестре при установке СОМ-объекта и может существовать как в виде отдельного файла с расширением tlb, так и в виде части файла с исполняемым кодом объекта). Элемент <reference> как раз обеспечивает доступ к мнемоническим константам, определенным в библиотеке типов объекта (экземпляр объекта при этом не создается).
Для того чтобы воспользоваться константами определенного объекта, нужно в теге <reference> указать программный код этого объекта (атрибут object) или глобальный код его библиотеки типов (атрибут guid), а также, при необходимости, номер версии объекта (атрибут version).
Например, доступ к константам объекта FileSystemObject организуется следующим образом:
<reference object="Scripting.FileSystemObject"/>
После этого в сценариях можно просто использовать константы с именами ForReading или ForAppending, не заботясь об их числовых значениях (соответствующий пример приведен в листинге 3.10).