Специальные обозначения в символьных строках Попытка создать сценарий, который будет выполнять все, что вам нужно, может привести к разочарованию, если язык сценария не предусматривает некоторых дополнительных свойств. Например, как вы пошлете на сервер управляющий символ? На многие серверы требуется послать символ Ctrl+Break, прежде чем они ответят. Для этого применяется
Рекомендация
Всегда используйте кавычки для объявления символьной строки в сценарии, даже если эта строка включает один управляющий символ; в противном случае обработчик сценария (script engine) проинформирует об ошибке.
Также существуют текстовые замены для управляющих символов. Например,
Сценарии коммутируемого доступа поддерживают некоторые последовательности символов, знакомые программистам на языке C. Например, с помощью символа \ (обратный слэш) в коде появятся двойные кавычки. Вам также понадобится знак вставки, вводимый так: \^. Кроме того, нужен обратный двойной слэш (\\) и знак «меньше» (\<).
Команды
Язык сценариев для подключения удаленного доступа предусматривает несколько встроенных команд. Вы можете создать другие команды с помощью операторов proc и endproc. В табл. 18.2 представлен список встроенных команд, которые разрешается использовать для сценария.
Таблица 18.2.
Встроенные команды сценария
waitfor «Login:»
Значение этой команды – подождать, пока вы получите "Login: " – символьную строку от сервера. Как только вы ее получите, сразу начнет выполняться команда, находящаяся в следующей строке сценария. Если же вы не хотите продолжать выполнение именно со следующей строки, воспользуетесь такой формой команды:
waitfor «error» then FixError
В данном случае мы ждем от хост-машины символьную строку, содержащую ошибку, а затем переходим к метке, называемой FixError. Очевидно, эта форма команды немного ограничена, так что, возможно, вам придется добавить другие метки. Кроме того, она предписывает подключению удаленного доступа ждать 15 с, а затем приступать к выполнению следующей команды по завершении ввода последнего аргумента:
waitfor
"Go For It" DoGoForIt
"Logged In" DoLogInStuff
"Error" FixError
until 15Как видите, допустимо продолжать построение этой команды, пока она управляет всеми видами возможного трафика. Разместите ее внутри команды do…enddo, и у вас появится программный цикл для управления всем сеансом связи.
Программа Телефон
Программа номеронабирателя Телефон (Phone Dialer) для Windows XP, расположенная в каталоге \Program Files\Windows NT\ (файл DIALER.EXE), отличается от аналогичной программы предыдущих версий Windows. Исчезло подобие цифровой панели, которую можно было использовать раньше. Эта версия номеронабирателя более функциональна и предназначена для работы в Internet и в корпоративной среде – например, на рис. 18.6 изображена телеконференция.
Рисунок 18.6.