Скриптирование с помощью COM-объектов

Язык сценариев — это язык программирования, который анализируется во время выполнения подсистемой сценариев, компонентом, который преобразует скрипты, написанные на этом языке, в машинный код. Каждый механизм сценариев преобразует определенный язык сценариев. Узел сценариев — это приложение, например веб-браузер, в котором размещен механизм сценариев для запуска скриптов. Если узел сценариев поддерживает COM, можно написать скрипты, использующие COM-объекты. В следующих разделах описаны узлы сценариев, поддерживающие COM-объекты, распространенные языки сценариев и способы перевода между языками сценариев.

Язык скриптов отличается от скомпилированного языка в том, что он преобразуется в машинный код во время выполнения. Это означает, что при каждом запуске скрипта подсистема сценариев сначала анализирует код, а затем запускает его. В отличие от этого, скомпилированные языки, такие как C++, переводятся в машинный код один раз во время компиляции. При запуске скомпилированного приложения операционная система просто запускает предварительно скомпилированный код.

Так как подсистема сценариев должна повторно обрабатывать скрипт при каждом запуске, языки сценариев обычно медленнее и менее эффективны, чем их предварительно скомпилированные аналоги. Преимущество сценариев, однако, заключается в том, что они легко писать и поддерживать. Языки сценариев обычно проще, чем предварительно скомпилированные языки, и при изменении скрипта не требуется перекомпилировать. Для упрощенных и быстро изменяющихся приложений, таких как веб-страницы, языки сценариев идеально подходят.

Существует несколько сред узла, в которых можно создавать скрипты, использующие COM-объекты, как описано ниже.

В каждой из сред узла, упоминание выше, подсистема сценариев анализирует и запускает скрипт. Так как подсистема для каждого языка сценариев является отдельным компонентом, вы можете добавить новый язык сценариев в среду, добавив новый механизм.

Наиболее часто используются языки сценариев:

  • Microsoft Visual Basic Scripting Edition (VBScript) — подмножество Visual Basic.
  • JavaScript, язык сценариев Netscape, ранее известный как LiveScript.
  • Программное обеспечение для разработки Microsoft JScript, реализация спецификации языка ECMA 262.

Корпорация Майкрософт предоставляет механизмы сценариев для JScript и VBScript. Другие программные компании предоставляют подсистемы сценариев ActiveX для таких языков, как PerlScript, PScript, Python и другие.

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

Обратите внимание, что большинство языков сценариев, таких как VBScript и JScript, не могут получить доступ к файлам или изменить их. Эта неспособность предотвращает изменение данных скрипта на клиентских компьютерах. Однако com-объекты не имеют таких ограничений. После скачивания и установки на клиентских компьютерах они могут выполнять любое стандартное действие приложения. Таким образом, пользователи должны загружать и запускать элементы ActiveX только из доверенных источников.

Сведения о переводе между языками сценариев см. в следующих разделах: