MacroControl позволяет управлять макрокомандами Far Manager.
intptr_t WINAPI MacroControl( const GUID *PluginId, enum FAR_MACRO_CONTROL_COMMANDS Command, intptr_t Param1, void *Param2 );
GlobalInfo.Guid функции GetGlobalInfoW).| Команда | Описание | ||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| MCTL_LOADALL | Загрузить все макросы из файлов в память Far Manager. Предыдущие значения макросов при этом выгружаются, за исключением макросов, добавленных с помощью команды MCTL_ADDMACRO. Param1 не используется.Param2 указывает на структуру
FarMacroLoad.
Для загрузки с параметрами по умолчанию установите в NULL.Функция при неудаче вернёт FALSE. | ||||||||||||||||||||||||||||||||||||||
| MCTL_SAVEALL | Сохранить клавиатурные макросы из памяти Far Manager в файлы. Если пользователь записал с клавиатуры новые макросы, изменил либо удалил существующие, то данные изменения станут постоянными. Param1 не используется.Param2 не используется.Функция при неудаче вернёт FALSE. | ||||||||||||||||||||||||||||||||||||||
| MCTL_SENDSTRING | Выполнить или проверить макрос.Param1 значение типа FARMACROSENDSTRINGCOMMAND:
| ||||||||||||||||||||||||||||||||||||||
| MCTL_EXECSTRING | Исполнить скрипт (строку или файл).Param1 не используется.Param2 указывает на структуру MacroExecuteString.Функция при неудаче вернёт FALSE. | ||||||||||||||||||||||||||||||||||||||
| MCTL_GETLASTERROR | Получить расширенную диагностику об ошибке проверки макроса или скрипта
(после исполнения команды MCTL_SENDSTRING или MCTL_EXECSTRING).Param1 размер буфера. Указывает максимальное количество байт, которые могут быть записаны в Param2.Param2 указатель на буфер, структуру MacroParseResult, память плагин выделяет самостоятельно.Функция возвращает размер требуемого буфера, при Param2 = NULL. | ||||||||||||||||||||||||||||||||||||||
| MCTL_GETSTATE | Получить статус работы макродвижка.Param1 не используется.Param2 не используется.Функция возвращает одно из значений (перечисление FARMACROSTATE):
| ||||||||||||||||||||||||||||||||||||||
| MCTL_GETAREA | Получить текущую макрообласть.Param1 не используется.Param2 не используется.Функция возвращает значение типа FARMACROAREA:
| ||||||||||||||||||||||||||||||||||||||
| MCTL_ADDMACRO | Добавить в память Far Manager макрос.Param1 игнорируется. Param2 указывает на структуру MacroAddMacro.Функция при неудаче вернёт FALSE. | ||||||||||||||||||||||||||||||||||||||
| MCTL_DELMACRO | Удалить из памяти Far Manager макрос, добавленный ранее командой MCTL_ADDMACRO.Param1 игнорируется. Param2 указывает на идентификатор удаляемого макроса, поле Id структуры MacroAddMacro.Функция при неудаче вернёт FALSE. |
Параметр1 команды. Смотрите описание Command.Параметр2 команды. Смотрите описание Command.Command.