Контактные данныеНаш адрес: Москва, ул. Рабочая 32-4
Тел.: +7 (495) 753 42 45
Факс: +7 (495) 753 42 45
Расширяем возможности с PowerShell
Программирование: Microsoft опять не доделал свой продукт? Но это только на первый взгляд. Если разобраться, не все так плохо. Рассмотрим подробнее практику использования метода AddCode(). В листинге 2 приведен пример, в котором с помощью этого метода передаётся значения параметра. Данный процесс состоит из двух частей: передачи параметра сценарию и чтения переданного значения.
Передача значения осуществляется с помощью ключа -f, за которым через запятую перечислены передаваемые параметры. В примере - это единственный параметр ps1. В VBScript вставке получение значения параметра осуществляется присвоением произвольной переменной инструкции (Number), где Number - порядковый номер считываемого параметра.
Передача результата из VBScript в PowerShell: Передать параметры из PowerShell в VBScript - это билет в один конец. Достаточно часто необходимо вернуть полученный результат обратно в PowerShell. Для решения этой задачи лучше всего подойдет метод Eval(). Этот метод имеет всего один параметр, значение которого - имя функции и ее параметры. Во фрагменте на VBScript, вставленном в PowerShell, обязательно должна быть объявлена функция, а не процедура.
Передача параметра обратно из VBScript обеспечивается стандартным механизмом: в VBScript необходимо в конце функции присвоить одноименной переменной результирующее значение функции. Это значение автоматически будет возвращено в метод Eval (в листинге 2 - переменная result). В листинге 2 приведен пример вычисления суммы двух чисел: из PowerShell передаются в VBScript функцию два числа - 2 и 5. Функция вычисляет сумму и возвращает результат в PowerShell. Полученное значение выводится на экран.