Самые первые шаги с API и C#

Автор anushka, 18.05.20, 14:52:55

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

anushka

Здравствуйте!

Впервые столкнулась с задаче написания модуля для КОМПАС.
Нашла единственный обучающий урок на хабре https://habr.com/ru/company/ascon/blog/328088/
Однако здесь используется C++. С этим языком у меня довольно плохие отношения. Хочу писать на C#.
В уроке сказано, что нужно подключить заголовочные файлы к проекту.
Попыталась найти информацию для создания dll, но объяснения, какие находила, были для маленьких примеров с одной функцией.
Как быть в данном случае, когда в .h файле описанных функций очень много?
Также попробовала просто запустить пример из папки CSharp, но не понимаю, что именно добавить надо...
В окне с ошибкой написано следующее: "Проект, создающий библиотеку классов, не может быть непосредственно запущен. Для отладки данного проекта добавьте к решению проект, создающий приложение и ссылающийся на эту библиотеку, и сделайте его запускаемым".
Возможно есть какие-нибудь подробные уроки?
Подскажите,пожалуйста.

BobaF

Для начала использования API Компаса через C# достаточно подключить следующие библиотеки, которые находятся в папке C:\Program Files\ASCON\KOMPAS-3D V1...\SDK\C#\Common :

KompasAPI7;
Kompas6API5;
KAPITypes;
Kompas6Constants
Kompas6Constants3D - константы 3D

А дальше всё зависит от того, как Вы собираетесь подключаться к Компасу через библиотеку или из под приложения.
Почитайте следующие темы:
https://forum.ascon.ru/index.php?topic=23942.0
https://forum.ascon.ru/index.php?topic=32691.0
https://forum.ascon.ru/index.php?topic=31420.0

По поводу примера: если компиляция программы завершилась успешно, то зайдите в Компас->Приложения->Добавить приложения->ActiveX и там должна быть скопилированная библиотека.
По крайней мере у меня работают библиотеки из примера, хотя тоже такая же ошибка выскакивает.

anushka

Спасибо за ответ! Попробую сделать.

pr0100


urbaraban

В контексте позволю разметить ссылку на репозиторий своей библиотеки для внешнего приложения:
https://github.com/urbaraban/KompasLib

Там конечно много нагорожено для моих личных целей (проблемы делегирования), но вдруг чем поможет, или заинтересует совместная работа.