Files
kompas3d-mcp/docs/Kompas3D_SDK/interfaces/ikompasconverter.md
T
mikhail e1337e4016 feat(sdk-docs): MD-база знаний SDK — в репозиторий; генератор и зеркало убраны
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>
2026-05-26 20:00:05 +03:00

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 - выход из диалога по кнопке Отмена.
```