logo
Программирование на языке Ruby

14.7. Библиотеки, о которых полезно знать

Если вы программируете на Ruby в Windows, вам абсолютно необходим пакет, созданный Дэниэлем Бергером (Daniel Berger), одним из самых известных специалистов по Ruby на этой платформе. Библиотека win32-utils — в действительности целый набор мелких библиотек. Мы не можем рассмотреть их все подробно, но хотя бы перечислим.

• win32-changenotify — для мониторинга событий файловой системы;

• win32-clipboard — для взаимодействия с буфером обмена Windows;

• win32-etc — предоставляет аналоги таких UNIX-функций, как getpwnam и getpwuid;

• win32-event — интерфейс с событиями Windows (объектами Event);

• win32-eventlog — интерфейс с журналом событий;

• win32-ipc — базовый класс для всех объектов синхронизации в Windows (используется в библиотеке win32-event и др.);

• win32-mmap — интерфейс к файлам, проецируемым на память, в Windows;

• win32-open3 — библиотека open3 для Windows (запустить команды и получить три описателя файлов);

• win32-pipe — именованные каналы в Windows;

• win32-process — реализация для Windows методов fork, wait и kill, имеющихся в UNIX;

• win32-sapi — интерфейс к Microsoft Speech API;

• win32-service — интерфейс к службам Windows;

• win32-shortcut — интерфейс для создания и модификации ярлыков в Windows;

• win32-sound — интерфейс для воспроизведения звуковых файлов в Windows;

Вот еще несколько библиотек, которые полезно иметь под рукой:

• Win32::Console — это перенос пакетов Win32::Console и Win32::Console::ANSI, первоначально написанных на языке Perl. Эта библиотека значительно упрощает работу с консолью в Windows (изменение цветов, позиционирование курсора, запрос информации и эмуляцию управляющих символов ANSI);

• ActiveDirectory позволяет легко взаимодействовать с экземплярами Active Directory, работающими на серверах под управлением Microsoft Windows;

• ruby-inifile позволяет работать с ini-файлами (читать, разбирать и обновлять их).

В сети есть еще много библиотек, которые могут вам пригодиться. Ищите их на сайтах http://raa-ruby-lang.org и http://rubyforge.org.