Найти в Дзене
Тонкости Renga

Часть 2. Power Shell. Первый скрипт. Запуск Renga.

Чтобы запустить Power Shell нужно просто нажать на кнопку на клавиатуре Win (ну или на кнопку «Пуск» мышью) и начать с клавиатуры вводить power shell. Выберите «Windows Power Shell» и запустите её. Вы также можете выбрать «Windows Power Shell ISE». Это редактор скриптов Power Shell, который кроме их запуска позволит также и сохранить вашу работу, правда для запуска скрипта именно в нем, потребуется кое-что сделать дополнительно. Лично я для этих целей предпочитаю Notepad++ из-за его простоты и подсветки синтаксиса (т.е. он выделяет служебные слова, что лишний раз не дает ошибиться при написании). Но навязывать свои предпочтения не буду, выбирайте сами. В конце концов и обычный «Блокнот» справится с задачей записать скрипт. Итак, напишем наш первый простой скрипт – запуск Renga. Откроем блокнот (или Notepad++) и напишем там следующие строки: Разберем наш скрипт по строкам 1. В первой строке мы создаем COM-объект Renga. При этом, все что нам необходимо для этого сделать, это создать пере

Чтобы запустить Power Shell нужно просто нажать на кнопку на клавиатуре Win (ну или на кнопку «Пуск» мышью) и начать с клавиатуры вводить power shell. Выберите «Windows Power Shell» и запустите её. Вы также можете выбрать «Windows Power Shell ISE». Это редактор скриптов Power Shell, который кроме их запуска позволит также и сохранить вашу работу, правда для запуска скрипта именно в нем, потребуется кое-что сделать дополнительно. Лично я для этих целей предпочитаю Notepad++ из-за его простоты и подсветки синтаксиса (т.е. он выделяет служебные слова, что лишний раз не дает ошибиться при написании). Но навязывать свои предпочтения не буду, выбирайте сами. В конце концов и обычный «Блокнот» справится с задачей записать скрипт.

Итак, напишем наш первый простой скрипт – запуск Renga.

Откроем блокнот (или Notepad++) и напишем там следующие строки:

Разберем наш скрипт по строкам

1. В первой строке мы создаем COM-объект Renga. При этом, все что нам необходимо для этого сделать, это создать переменную, которая будет представлять собой объект Renga и присвоить ей ссылки на созданный объект. Так как переменные в PowerShell всегда начинаются со знака $, нетрудно догадаться, что наша переменная - $renga_app. Далее следует команда, которая и создает COM-объект необходимого типа: new-object -com. Далее нужно ввести имя класса COM-объекта Renga: Renga.Application.1. Последним в этой строке стоит параметр -strict, который указывает среде Power Shell, что у создаваемого объекта есть вызываемая оболочка времени выполнения. Renga как раз является таким объектом, поэтому данный параметр необходимо указать во избежание сообщений об ошибках. Если ничего не поняли про параметр, не огорчайтесь, просто запомните, что он должен быть при создании COM-объекта Renga.

2. Далее идет специальная конструкция Power Shell для обработки ошибок try- finally. Все что должно выполниться, должно быть помещено между словами try и finally. Необходимо также эти строки кода поместить в специальный блок из скобок {}, чтобы оболочка считала этот код единым целым для выполнения.

Если вдруг мы ошибемся при написании кода и возникнет ошибка во время выполнении скрипта, то данная конструкция гарантирует, что Renga будет закрыта, несмотря на наши ошибки. За это отвечает строка в конце блока после служебного слова finally: {$renga_app.Quit()}. Если мы не сделаем такую обработку и произойдет ошибка, то велика вероятность того, что Renga так и останется запущенной до тех пор, пока мы не перегрузим компьютер. При одном запуске невелика беда, но при множестве запусков у вас могут остаться запущены десятки экземпляров Renga. Это, конечно, скажется на потреблении памяти и ресурсов компьютера.

3. Внутри блока try- finally, мы заставляем Renga стать видимой, для чего вызывается свойство, описанное в API $renga_app.Visible = $true; Здесь, renga_app - наша переменная, т.е. запущенная нами Renga, а слово Visible после точки и есть свойство класса Renga, отвечающее за видимость приложения. $true – это служебная переменная PowerShell («истина» или если проще - «Да»). Далее просто выводится текст в оболочку «Run Renga» для подтверждения что Renga запущена и пауза, чтобы у нас было время прочитать этот текст. Т.е. в принципе эти две строки не обязательны и нужны только для того, чтобы нам убедиться в выполнении кода.

Сохраняем данный код, указав расширение ps1. Например, с таким именем: «Запуск Renga.ps1». Расширение файла ps1, уже связано в операционной системе с оболочкой PowerShell. Поэтому для выполнения кода достаточно будет на этом файле щелкнуть правой кнопкой мыши и выбрать команду. «Выполнить с помощью PowerShell». После запуска скрипта, мы увидим, что запустилась Renga и в окне PowerShell появилась надпись.

После того, как мы нажмем ВВОД (клавишу ENTER на клавиатуре), окно PowerShell и Renga закроются. Renga закроется потому, что будет вызван метод класса Quit.

Откуда же мы узнаем, как должен называться класс COM-объекта Renga и какие методы у него есть? Т.е. какие команды мы можем дать Renga для выполнения каких-либо действий – в нашем случае стать видимой (Visible = $true) и закрыть программу (Quit()). А вот здесь как раз нам и понадобится справка API. После того, как вы скачали архив с пакетом SDK, распакуйте его в одноименную папку. Само наименование класса проще всего подсмотреть в папке примеров для языка Python, которые расположены во вложенных папках Samples/Python. К сожалению, в справке об этом почему-то умалчивается. Для того, чтобы узнать какие методы доступны в приложении, найдите в ней файл GetStarted.html и запустите его. Найдите в дереве справки Renga API->Interfaces -> Interface List -> IApplication. Там перечислены все доступные методы приложения Renga -от создания проекта, до закрытия приложения. Информация приведена на английском языке, но мы по мере изучения выясним назначение и работу каждого из методов и свойств.

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

После запуска скрипта запустилась Renga и был создан новый проект на основе стандартного шаблона.

Результат: Мы научились c помощью скрипта запускать приложение Renga и создавать новый проект. Я думаю, что это было не так уж и сложно.

PS Надеюсь не надо объяснять, что это все будет работать при условии, что у вас на этом компьютере установлена Renga.

Файлы скриптов можно скачать здесь

Можно также посмотреть видео, демонстрирующее создание скриптов