Программное обеспечение для вашего бизнеса.
Разработать плагин для ExaHotelFree можно, используя один из многих языков программирования. В конечном итоге нужно создать 32-разрядную библиотеку DLL для Windows.
Внимание! Перед началом разработки убедитесь, что все требуемые для плагина возможности доступны. Список возможностей приведен в статье Плагины.
Основное требование к плагину следующее. В библиотеке DLL должна быть реализована функция Init, возвращающая интерфейс IExaDataBaseCommandsPlugin. ExaHotelFree автоматически вызывает эту функцию, когда обнаруживает плагин в папке плагинов. В интерфейсе IExaDataBaseCommandsPlugin реализуется функция, возвращающая наименование плагина (для отображения команды в меню), а также функция запуска плагина (когда пользователь вызвал эту команду). В последнюю параметром передается интерфейс IExaApp, который предоставляет плагину доступ к приложению и базе данных. Здесь нужно написать основную работу плагина.
Дополнительно в плагине может быть реализована функция Done - ее ExaHotelFree вызывает при выходе из программы. В ее реализации плагин может, например, удалить свои временные файлы или сохранить настройки.
typedef HRESULT __stdcall (*TInit)(IUnknown **Result); typedef HRESULT __stdcall (*TDone)(void);
type TInit = function: IInterface; safecall; TDone = procedure; safecall;
Как работать с интерфейсами, смотрите здесь: Обзор интерфейсов в плагинах.
Сами интерфейсы находятся в заголовочных файлах. Скачать заголовочные файлы можно здесь: https://exaoffice.ru/downloads/plugins/ExaPluginHeaders.zip.
Хотя заголовочные файлы содержат TLB (библиотеку типов), следует учесть, что плагины работают не через COM, а через указанные выше функции и интерфейсы. TLB используется лишь для удобного импорта описаний интерфейсов в другие языки программирования.
В качестве примеров можно использовать имеющиеся плагины: Плагины.
Мы стараемся как можно оперативнее обеспечивать вас актуальной справочной информацией. Ввиду частых обновлений приложения информация в этом материале может не совсем соответствовать или быть неполной. Благодарим за понимание.
Не нашли ответа на ваш вопрос? Напишите по электронному адресу info@exaoffice.ru — мы ответим максимально быстро.