---
title: "Интерфейс IСonverter"
type: interface
api: [api7]
tags: [interface, api7, iconverter]
sources:
  - iconverter.html
---

*API интерфейсов. Версия 7 > Конвертер файлов КОМПАС *


## Интерфейс IСonverter

Конвертер файлов КОМПАС.
Иерархия:
IKompasAPIObject
IConverter
Примечание:
1. Интерфейс позволяет управлять конвертером системы КОМПАС, задавать параметры конвертирования, получать фильтр и выполнять конвертацию документа системы КОМПАС.
2. Данный интерфейс может быть получен от интерфейса приложения IApplication с помощью свойства IApplication::Converter.


## 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    - в случае неудачи.
```
Примечание:
Если имя исходного файла документа не задано, то берется текущий документ. Если новое имя файла документа не задано, то конвертация будет происходить в новый документ системы КОМПАС.


## ConverterParameters - Получить интерфейс параметров конвертирования

Синтаксис Automation:
```
LPDISPATCH ConverterParameters (long command);
```
Синтаксис COM:
```
HRESULT ConverterParameters ([in] long command, [out, retval] IUnknown ** PVal);
Входные параметры:
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    '), которое используется в диалогах Открыть файл и Сохранить файл.
```


## VisualEditConvertParam - Запустить визуальное редактирование параметров конвертации

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