Современное программное обеспечение позволяет решать очень широкий спектр задач. На выбор программного обеспечения прежде всего влияют такие факторы, как качество решения задачи, распространенность, уровень сервиса при решении задачи. Однако невозможно создать даже узко специальную программу, которая была бы универсальной и удобной во всех случаях. Существует множество ситуаций, в которых пользователю приходится выполнять с помощью программного обеспечения постоянную однотипную работу. Для повышения удобства работы в таких ситуациях разработчики программного обеспечения либо совершенствуют встроенный сервис, либо предлагают простые средства для разработки дополнительных возможностей своего программного обеспечения непосредственно пользователям.
По такому пути развития уже давно идет фирма Microsoft, предлагающая пользователям средства для самостоятельной разработки простых расширений программного обеспечения. Практически все серьезные продукты поддерживают возможность создания макросов. Одним из наиболее специализированных средств является Visual Basic for Applications (VBA). Архитектура построения приложения с точки зрения пользователя достаточно проста. Пользователь имеет некоторый объект (например Microsoft Excel), который может выполнять команды как с помощью кнопок панелей управления, меню и "горячих клавиш", так и с помощью программных конструкций, записанных в макросах. При этом пользователь работает с оболочкой, предоставляющей ему средства для управления содержащимся внутри объектом. Объект может быть задействован даже вне своей "родной" оболочки, и быть встроен в совершенно произвольную программу. Для выполнения встраивания разработчик программы должен иметь описание методов работы с объектом и иметь средства, позволяющие ему создать программу с возможностью встраивания требуемого объекта.
Следующим этапом развития технологии пользовательских расширений явилась, предложенная опять же фирмой Microsoft, технология на базе так называемого Windows Scripting Host (WSH). Данная технология делает само средство выполнения макросов встраиваемым объектом. При известном желании разработчик программного обеспечения может добавить к своей программе возможность выполнения макросов, базирующуюся на единой технологии WSH. Поскольку WSH является частью операционной системы Windows, переносимость программ, выполненных для него является практически стопроцентной. Таким образом, имея навык разработки макросов для одного приложения, можно с легкость разрабатывать аналогичные конструкции и для любого другого приложения. При переходе от одного приложения к другому пользователю следует только изучить особенности объектов нового приложения, при этом основная база разработки остается прежней. WSH предлагает пользователям выбор из нескольких языков программирования JavaScript, VBScript и другие. Наибольшим успехом, благодаря своей относительной простоте, пользуется VBScript.
Программный комплекс RastrWin и связанные с ним программные продукты - ActOpus, BaRs, LinCorWin имеют общее ядро. И это не случайно. В основе программ лежит единый объект - расчетный блок, котороый также обеспечивает работу с данными, организованными в виде встроенной СУБД. При помощи средства разработки, имеющегося в этих программах, пользователь может выполнять все действия с расчетным блоком, которые доступны из оболочки (кнопки, меню, "горячие клавиши") и дополнительные действия, поддерживаемые расчетным блоком. В пользовательском расширении могут быть использованы не только возможности расчетного блока. Пользователь может задействовать любой объект автоматизации, имеющийся в его распоряжении (доступ к файловой системе, к базам данных, элементам пользовательского интерфейса). Это делает средство разработки расширений сравнимым по эффективности со средствами профессиональной разработки приложений.
Данный раздел сайта предназначен для обмена опытом по разработке расширений для программных комплексов RastrWin,ActOpus, BaRs, LinCorWin. В нем будут публиковаться наиболее интересные и полезные макросы, используемые реальной работе. Разработчики будут снабжать свои примеры макросов подробными комментариями. Заинтересованные пользователи могут принять активное участие в пополнении раздела, присылая свои разработки. Они будут помещены на сайт для общего ознакомления.
Для работы с Макро Студией необходимо знакомство с разделом документации - RastrWin - Макро.
Документация по VBScript находится на сайте Microsoft - Windows Script Host. (на английском языке).
Из доступной литературы на русском языке можно рекомендовать - Гюнтер Борн "Руководство разработчкика на Microsoft Windows Script Host 2.0" - СПб.: Питер, 2001
Для начинающих предлагается часовая лекция по основам VBScript и программной модели RastrWin.
И практический пример разработки простого макроса.
И еще один практический пример разработки простого макроса.