Некорректная структура библиотеки.

Автор Drake, 14.12.14, 18:41:13

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

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

Drake

Доброго времени суток. Пробовал написать простую библиотеку для компаса, не смог ее подключить. Язык C#, среда VS2013, Компас v.14.
Сделал все как написано в мануалах. В итоге получил окно при попытке подключить библиотеку с уведомлением, некорректная структура библиотеки, попытался скомпилировать примеры из папки SDK\C#\Automation\, все компилируется нормально, и регистрируется в реестре (я специально проверял, и свою библиотеку тоже), результат тот же. Кто нибудь знает в чем проблема? Я перелопатил весь этот форум, но ни чего вразумительного не нашел. Тут бывают разработчики? Я полагаю, что мануалы и примеры в папке SDK создаются ими, так почему же даже они не работают? Или они были созданы уже давно и с тех пор не пересматривались? Ну так кто мне даст четкий ответ на вопрос, что мне надо сделать, чтоб библиотека, написанная на C# заработала в Компас?
P.S. Пробовал подключать через вкладку ActiveX, как было написано в одной из тем этого форума, тоже самое, не подключается, регистрацию для COM, пробовал и автоматически в VS при компиляции делать (ставил галочку), пробовал и вручную regasm, результат один и тот же.

Golovanev

Компас для какой платформы? x32 или x64?
А для какой платформы делаете компиляцию библиотеки?

Drake

Компиляция для x32, Компас тоже х32, .NET Framework 4. Система на компьютере Win 8.1 x64. Изначально компилировал для Any CPU, потом исправил на х32.

Slaviation

Предлагаю проверить, что используемые в библиотеке функции оформления LIBRARYENTRY, LIBRARYNAME, LIBRARYID объявлены в проекте как экспортные.

В проектах С++ это делается, к примеру, в def файле

LIBRARY      "MyLib"
EXPORTS
; Explicit exports can go here
LIBRARYENTRY    @1
LIBRARYID @2
LIBRARYNAME @3

В проектах C# должно быть что-то аналогичное.
   

Drake

Я полагаю, что для этого и требуется для библиотек написанных на C# COM-взаимодействие и регистрация в реестре.