Сервисные функции

Сервисные функции позволяют плагину воспользоваться почти всей мощью S&R в своих целях. Все функции условно разделены на несколько видов, именно в таком порядке они описываются ниже.

Работа с файлами, содержащими строковые данные, с учетом языка интерфейса FAR

Эти функции используются для создания многоязычных плагинов.
InitLocMsg
Формирование имени файла с данными на основе имени srp-модуля.
LocMsg
Получить строку из файла в соответствии с текущим языковым интерфейсом FAR.

Работа с объектом "расширенные параметры поиска"

ESO_Create, ESO_Delete
Создать новый объект, удалить существующий.
ESO_GetMode, ESO_SetMode
Узнать состояние объекта (включен/выключен), изменить состояние (включить/выключить).
ESO_GetParam, ESO_SetParam
Узнать значение того или иного параметра объекта, изменить его.
ESO_Copy
Скопировать объект.
ESO_Edit
Редактировать расширенные параметры поиска в стандартном диалоге.
ESO_Save, ESO_Load
Сохранить настройки объекта для будущего использования, считать предварительно сохраненные настройки.
ESO_CompareWithWFD
Проверить свойства файла или каталога на удовлетворение настройкам объекта.

Работа с объектом "регулярное выражения для поиска"

RE_Create, RE_Delete
Создать новый объект, удалить существующий.
RE_SetExpr
Компиляция выражения.
RE_LastError, RE_ErrorPosition
Разбор ошибок в выражении.
RE_GetBracketsCount
Получить количество скобок в выражении.
RE_Match, RE_Search
Сопоставление рекэкспа целевой строке.

Работа с объектом "регулярное выражения для замены"

RRE_Create, RRE_Delete
Создать новый объект, удалить существующий.
RRE_SetExpr
Компиляция выражения.
RRE_CheckLength
Проверить вероятный размер получаемой строки замены.
RRE_Fill
Заполнить строку замены.
RRE_GetBuffer
Получить адрес строки замены.
RRE_GetCounter, RRE_SetCounter
Узнать или изменить состояние счетчика.

Работа с объектом "Хеш"

Hash_Create, Hash_Delete
Создать новый объект, удалить существующий.
Hash_Exists
Проверка наличия элемента с указанным именем.
Hash_SetItem
Добавить элемент в хеш.
Hash_GetItemAddr
Получить указатель на элемент.
Hash_First
Начать обход хеша.
Hash_GetNext
Получить указатель на очередной элемент.
Hash_Empty
Очистить хеш.

Работа с объектом "поиск файлов по дискам"

FS_Create, FS_Delete
Создать новый объект, удалить существующий.
FS_Set
Установить параметры поиска файлов.
FS_Search
Выполнить поиск файлов.
FS_GetRoot
Имя каталога, с которого начался поиск.

Работа с объектом "права доступа"

FSec_Create, FSec_Delete
Создать новый объект, удалить существующий.
FSec_GetSecurity
Запомнить права доступа.
FSec_SetSecurity
Установить права доступа.

Работа с объектом "файловые атрибуты"

FAttr_Create, FAttr_Delete
Создать новый объект, удалить существующий.
FAttr_GetAttr
Получить атрибуты.
FAttr_SetAttr
Изменить атрибуты.

Работа с объектом "схема"

SCHEME_Create, SCHEME_Delete
Создать новый объект, удалить существующий.
SCHEME_Menu
Показать меню работы со схемами.
SCHEME_Add
Сохранить текущие настройки чего-либо в схему.

Работа с настройками

Вы должны использовать именно эти функции для хранения настроек плагина, в этом случае вы безболезненно перенесете смену места хранения настроек в будущем (в настоящий момент настройки хранятся в реестре).
WriteStr, ReadStr
Сохранить строку в хранилище, считать ее.
WriteDWORD, ReadDWORD
Сохранить число типа DWORD в хранилище, считать его.
WriteBytes, ReadBytes
Сохранить произвольный объект в хранилище, считать его.
DeleteKey
Удалить ветку с данными из хранилища.

Работа с объектом "маска файлов"

FM_Create, FM_Delete
Создать новый объект, удалить существующий.
FM_Set
Компилировать маску файлов для дальнейшей работы.
FM_Compare
Проверка имени файла на предмет совпадения с маской.

Работа с кодировками символов

CS_Load
Инициализировать кодовую таблицу.
CS_Choose
Показать меню выбора кодировки.

Прочие функции

Cmd
Позволяет запрашивать различную информацию и выполнять управляющие действия.

Устаревшие функции

ViewerControl
Функция существует только для сохранения совместимости со старыми плагинами, не рекомендуется ее использовать в новых плагинах. Фактически представляет собой вызов одноименной функции из FAR API.

Смотрите также:
Экспортируемые функции | Структуры | Разное