e1337e4016
docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается. - .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным (safety-net на случай повторной локальной выгрузки). - CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
125 lines
6.0 KiB
Markdown
125 lines
6.0 KiB
Markdown
---
|
|
title: "Интерфейс IKompasConverter"
|
|
type: interface
|
|
api: [api7]
|
|
tags: [interface, api7, ikompasconverter]
|
|
sources:
|
|
- ikompasconverter.html
|
|
---
|
|
|
|
*Создание прикладных библиотек > Оформление библиотек типа Converter *
|
|
|
|
|
|
## Интерфейс IKompasConverter
|
|
|
|
Стандартный интерфейс импорта/экспорта.
|
|
Позволяет связать систему КОМПАС и библиотеки импорт/экспорта документов.
|
|
Реализуется в библиотеках типа Конвертор
|
|
|
|
|
|
## CanUnloadLibrary - Разрешение на выгрузку библиотеки из памяти
|
|
|
|
Тип данных:BOOL.
|
|
Значения свойства:
|
|
| TRUE | - библиотеку можно выгружать из памяти, |
|
|
| --- | --- |
|
|
| FALSE | - библиотеку нельзя выгружать из памяти. |
|
|
Синтаксис Automation:
|
|
```
|
|
CanUnloadLibrary = iObject.CanUnloadLibrary Получить свойство (* )1
|
|
CanUnloadLibrary = iObject.GetCanUnloadLibrary( ) Получить свойство (**)2
|
|
```
|
|
Синтаксис COM:
|
|
```
|
|
iObject->get_CanUnloadLibrary ( &CanUnloadLibrary ) Получить свойство.
|
|
```
|
|
Примечание:
|
|
Если внутренний интерфейс параметров захвачен другими пользователями, то библиотеку нельзя выгружать из памяти до тех пор, пока он не освободится. Так как в системе КОМПАС предусмотрена автоматическая выгрузка библиотек, то перед выгрузкой будет вызвана эта функция и библиотека будет выгружена, только если она вернет TRUE.
|
|
|
|
|
|
## Convert - Запустить процесс конвертации
|
|
|
|
Синтаксис Automation:
|
|
```
|
|
long * Convert ( BSTR inputFile, BSTR outfile, long command, BOOL showParam );
|
|
```
|
|
Синтаксис COM:
|
|
```
|
|
HRESULT Convert ( [in] BSTR inputFile,
|
|
[in] BSTR outfile,
|
|
[in] long command,
|
|
[in] VARIANT_BOOL showParam,
|
|
[out, retval] long* Result );
|
|
Входные параметры:
|
|
inputFile - имя исходного файла документа,
|
|
outfile - новое имя файла документа,
|
|
command - номер команды,
|
|
showParam - TRUE - выдавать диалог параметров конвертации, - FALSE - не выдавать диалог параметров конвертации.
|
|
Возвращаемое значение:
|
|
1 - в случае успешного завершения,
|
|
0 - в случае неудачи.
|
|
```
|
|
Примечание:
|
|
Если имя исходного файла документа не задано, то берётся текущий документ, если новое имя файла документа не задано, то конвертация будет происходить в новый документ системы КОМПАС.
|
|
|
|
|
|
## CIonverterParameters - Получить параметры конвертора
|
|
|
|
Синтаксис Automation:
|
|
```
|
|
LPDISPATCH ConverterParameters( long command);
|
|
```
|
|
Синтаксис COM:
|
|
```
|
|
HRESULT ConverterParameters ( [in] long command, [out, retval] IUnknown** iParam );
|
|
Входные параметры:
|
|
command - номер команды.
|
|
Возвращаемое значение:
|
|
указатель на интерфейс IUnknown - в случае успешного завершения,
|
|
0 - в случае неудачи.
|
|
```
|
|
Примечание:
|
|
Данный метод позволяет получить интерфейс параметров конвертирования.
|
|
|
|
|
|
## GetFilter - Получить фильтр и номер команды по типу документа
|
|
|
|
Синтаксис Automation:
|
|
```
|
|
BSTR * GetFilter ( long docType, BOOL saveAs, long * command );
|
|
```
|
|
Синтаксис COM:
|
|
```
|
|
HRESULT GetFilter ( [in] long docType,
|
|
[in] VARIANT_BOOL saveAs,
|
|
[out] long * command,
|
|
[out, retval] BSTR* Result );
|
|
Входные параметры:
|
|
docType при импорте в КОМПАС-документ - тип документа из перечисления DocumentTypeEnum, при экспорте КОМПАС-документа - тип документа, в который производится экспорт; перечисление типов документов должно быть задано в конверторе. Например, для конвертора в DXF и DWG используются типы: #define FORMAT_DXF 1 // ID команды для работы с DXF #define FORMAT_DWG 2 // ID команды для работы с DWG
|
|
saveAs - TRUE - экспорт документа КОМПАС, - FALSE - импорт в документ КОМПАС.
|
|
Выходные параметры:
|
|
command - номер команды.
|
|
Возвращаемое значение:
|
|
фильтр - строка с справочным значением (например, "КОМПАС-фрагменты (*.myfrw *.myfrw " ), которое используется в диалогах открытия и сохранения файлов.
|
|
```
|
|
|
|
|
|
## VIisualEditConvertParam - Запустить визуальное редактирование параметров конвертации
|
|
|
|
Синтаксис Automation:
|
|
```
|
|
BOOL * VisualEditConvertParam ( OLE_HANDLE parentHwnd, long command );
|
|
```
|
|
Синтаксис COM:
|
|
```
|
|
HRESULT VisualEditConvertParam ( [in] OLE_HANDLE parentHwnd,
|
|
[in] long command,
|
|
[out, retval] VARIANT_BOOL * val );
|
|
Входные параметры:
|
|
parentHwnd - дескриптор окна родителя,
|
|
command - номер команды.
|
|
Возвращаемое значение:
|
|
TRUE - выход из диалога по кнопке OK,
|
|
FALSE - выход из диалога по кнопке Отмена.
|
|
```
|