Программирование на языке Ruby
Шрифт:
Однако имеется метод
Получив такой хэш, мы можем преобразовать его к любому другому виду (например, в массив):
Обратное присваивание объекту
14.4.3. Импорт переменных окружения как глобальных переменных
Существует библиотечка
Поскольку библиотека
Еще раз подчеркнем, что любые изменения переменных окружения, выполненные внутри программы на Ruby, не отражаются на их значениях, видимых вне этой программы.
14.5. Сценарии на платформе Microsoft Windows
Как и на лыжном курорте, где девушки ищут мужей, а мужья — девушек, ситуация не так симметрична, как может показаться на первый взгляд.
Уже отмечалось, что Ruby больше любит ОС UNIX. В каком-то смысле это правда: язык разрабатывался в среде UNIX, в ней лучше всего и работает. Сейчас он, впрочем, перенесен на другие платформы, в том числе на Macintosh; ведется даже работа по переносу на Palm OS. Но если UNIX — основная платформа, то следующая по значимости — Windows.
Пользователи Windows не брошены на произвол судьбы. Существует немало инструментов и библиотек для этой платформы, а разрабатывается
В прошлом существовало несколько вариантов Ruby для Windows. Интерпретатор мог быть собран компилятором gcc или Visual С, его работа могла зависеть от наличия библиотеки Cygwin DLL и т.д. Но в последние годы появился «моментальный» инсталлятор для Windows (см. раздел 14.6).
Среда изменяется слишком быстро, чтобы можно было ее сейчас документировать, однако в этом разделе мы все же рассмотрим некоторые вопросы написания сценариев и автоматизации на платформе Windows. Описанные приемы и утилиты должны работать в любой ОС. Если возникнут проблемы, сообщество придет на помощь.
14.5.1. Расширение Win32API
Расширение
Указанная функция становится объектом, а методу new передаются параметры, точно описывающие функцию. Первый параметр — строка, идентифицирующая DLL, в которой находится функция (например,
Массив импорта может содержать следующие значения (регистр не играет роли):
Строка экспорта также может содержать любое из этих значений, а также значение «V», означающее «void».
После того как объект создан, можно обратиться к его методу
В примере ниже мы вызываем функцию
В данном случае функция вернула составные двоичные данные, а иногда такие данные нужно подать на вход функции. Понятно, что для этого нужно воспользоваться методом
Фурцева
1303. Жизнь замечательных людей
Документальная литература:
биографии и мемуары
рейтинг книги
Преисподняя
54. Книга-загадка, книга-бестселлер
Фантастика:
научная фантастика
рейтинг книги
Палач
Фантастика:
ужасы и мистика
рейтинг книги
Имперец. Том 1 и Том 2
1. Имперец
Фантастика:
попаданцы
альтернативная история
аниме
рейтинг книги
Первый среди равных
1. Первый среди Равных
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Жажда ночи
3. В ритме танго
Любовные романы:
любовно-фантастические романы
эро литература
рейтинг книги
Билет на ладью Харона
2. Дырка для ордена
Фантастика:
альтернативная история
рейтинг книги
Понюшка (Snuff)
39. Плоский мир
Фантастика:
юмористическая фантастика
рейтинг книги
Монстр из прошлого тысячелетия
5. Соприкосновение миров
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Уго Чавес
1432. Жизнь замечательных людей
Документальная литература:
биографии и мемуары
рейтинг книги
Неучтенный элемент. Том 9
9. Антимаг. Вне системы
Фантастика:
фэнтези
рейтинг книги
Первопроходцы
638. Жизнь замечательных людей
Документальная литература:
биографии и мемуары
рейтинг книги
Итальянский фашизм
Научно-образовательная:
история
политика
рейтинг книги