---
title: "С#"
type: guide
api: [api7]
tags: [guide, api7, making]
sources:
  - making_lib_c.html
---

*Создание прикладных библиотек  > Создание прикладных библиотек в различных средах программирования *


## С#

1. В свойствах проекта (Configuration Properties - Build) включите опцию Register for COM Interop (TRUE).
2. Создайте DLL-обертки для TLB Компас API (они расположены в папке ..\SDK\Lib) с помощью утилиты TlbImp.exe
3. Подключите созданные DLL к проекту, вызвав команду контекстного меню Add Reference.
4. Для регистрации библиотеки в системе КОМПАС класс библиотеки должен реализовывать статический метод типа .htmSample (Type type) с атрибутом ComRegisterFunctionAttribute, в котором для ключа реестра в HKCR, отвечающего за регистрацию класса, создается раздел с именем Kompas_Library.
5. Чтобы зарегистрировать библиотеку на компьютере пользователя, необходимо воспользоваться утилитой RegAsm.exe. Нажмите кнопку Пуск, вызовите команду Выполнить…, введите командную строку вида RegAsm.exe /codebase <файл_библиотеки> и нажмите кнопку ОК.


## С++ Builder

1. Вызвать из меню File команду New.... Выбрать тип DLL Wizard на вкладке NEW. Другие настройки на этой вкладке оставить без изменения.
2. В настройках проекта установить выравнивание:
Project Options - Advanced Compiler - Data Alignment = Byte.
3. В настройках проекта или в дальнейшем после компиляции изменить расширение файла библиотеки с dll на rtw.
4. Для создания КОМПАС-библиотеки необходимо вставить несколько экспортных функций.
Пример реализации простейшей библиотеки расположен в папках:
•..SDK\С++\CBUILDERAUTO\Step1 (библиотека написана с использованием Автоматизации);
•..SDK\С++\CBUILDER\Step1 (библиотека написана с использованием экспортных функций).


## Delphi

Чтобы создать библиотеку, нужно выполнить следующие действия.
1. Вызвать команду File - New.... Выбрать тип DLL на вкладке NEW.
2. В настройках проекта установить выравнивание: выключить опцию
Project Options - Compiler - Code Generation - Aligned Record fields.
3. В настройках проекта или в дальнейшем после компиляции изменить расширение файла библиотеки с dll на rtw.
4. Для создания КОМПАС-библиотеки необходимо вставить несколько экспортных функций.
Примеры реализации простейшей библиотеки расположены в папках:
•..SDK\PASCAL\DELPHIAUTO\Step1 (библиотека написана с использованием Автоматизации);
•..SDK\PASCAL\DELPHI\Step1 (библиотека написана с использованием экспортных функций).


## Visual Basic

1. Вызвать из меню File команду New - Project, тип ActiveX DLL.
2. Для создания КОМПАС-библиотеки необходимо вставить несколько функций.
3. Библиотеки данного типа подключаются к КОМПАС на вкладке ActiveX, где их необходимо зарегистрировать при первом подключении, нажав кнопку Добавить.
Пример реализации простейшей библиотеки расположен в папке ..SDK\Basic\Step1 (библиотека написана с использованием Автоматизации).


## Visual С++

1. Вызвать из меню File команду New.
2. На вкладке Projects выбрать из списка вариант MFC AppWizard (dll). Ввести в поле Project Name: имя проекта и нажать кнопку OK.
3. В появившемся на экране диалоге MFC AppWizard - Step 1 of 1 выбрать в группе What type of DLL would you like to create? вариант MFC Extension DLL (using shared MFC DLL). Другие настройки этого диалога оставить без изменения и нажать кнопку Finish.
4. Вызвать команду Project - Settings....
5. В появившемся диалоге Project Settings раскрыть вкладку C/C++.
6. Выбрать из раскрывающегося списка Category вариант General. В поле Preprocessor definition подстроку _DEBUG заменить на NDEBUG.
7. Выбрать из раскрывающегося списка Category вариант Code Generation. Выбрать из раскрывающегося списка Use run-time library вариант Multithread DLL.
8. Закрыть диалог, нажав кнопку OK.
9. В настройках проекта установить выравнивание:
•выбрать из раскрывающегося списка Category вариант Code Generation;
•выбрать из раскрывающегося списка Struct member argument вариант 1Byte.
10. Для создания КОМПАС- библиотеки необходимо вставить несколько функций.
11. В настройках проекта или в дальнейшем после компиляции изменить расширение файла библиотеки с dll на rtw.
Пример реализации простейшей библиотеки расположен в папках:
•..\SDK\С++\VisualcAUTO\Step1 (библиотека написана с использованием Автоматизации);
•..SDK\С++\Visualc\Step1 (библиотека написана с использованием экспортных функций).
Сведения по настройке конфигурации проекта библиотеки в среде VС++ 2005 для платформы х64
