Общие сведения о библиотеках типа Converter |
Scroll |
Библиотеки типа Converter позволяют выполнять импорт и экспорт документов различных форматов.
В библиотеке должен быть реализован интерфейс конвертора IKompasConverter.
В библиотеке должны быть реализованы следующие функции.
•LIBRARYID - идентификатор для ресурсов библиотеки, который позволяет получить имя библиотеки и меню команд.
•LPKOMPASCONVERTER WINAPI GetIKompasConverter() - предопределенная функция, возвращающая интерфейс конвертора.
•void WINAPI LIBRARYENTRY (unsigned int comm) - точка входа для вызова команд.
Чтобы создать библиотеку, следует использовать функции оформления библиотек. Они обеспечивают стыковку системы КОМПАС и приложения.
После регистрации конвертора в реестре указанные расширения файлов появляются в диалогах сохранения (после вызова команды Файл - Сохранить как...) и открытия файлов. В диалоге сохранения файлов расширения файлов появятся в том случае, если для текущего типа файла задан номер команды для сохранения SaveCommandID. В диалоге открытия файлов фильтр будет содержать все расширения, для которых задан номер команды для открытия OpenCommandID.
Примечание. Номера команд для разных типов файлов могут совпадать.
IKompasConverter::Convert - для сохранения или открытия файла из диалога, как функция интерфейса.
При сохранении документа в качестве имени исходного файла передается пустая строка, а в качестве имени выходного файла передается имя, заданное пользователем в диалоге. Значение номера команды выбирается из реестра.
При открытии файла в качестве имени исходного файла передается имя, заданное пользователем в диалоге, а в качестве выходного файла передается пустая строка.
При вызове конвертора из прикладной библиотеки может приходить и входное, и выходное имя файла. Это означает, что нужно открыть нужный файл (можно в невидимом режиме), если он еще не открыт, и конвертировать его. После конвертации, если файл был открыт конвертором, он должен быть закрыт.
Пример файла реестра Windows для регистрации библиотеки (*.reg)...
Параметры библиотек типа Converter
Подразделы:
(отсутствуют)