Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > .Net и COM


Автор: max-anikin 1.4.2005, 12:58
Посдкажите плиз как создать COM dll с помощью .Net C#.
Т.е. необходимо написать класс а затем его использовать его как COM-объект в других средах. Я накопал что это можно сделать с помощью утилитки regasm.exe, типа она зарегестрирует мою сборку как COM. Но для этого сборка должна быть подписана и т.д.
Я создал C# Class Library Написал класс с парой public методов. Подписал сборку, но не размещая ее в Global Assembly Cache зарегестрировал ее с помощью regasm - ниче не вышло - мою сборку не видно в COM.
Cкажите плиз что я сделал не так или как надо это создавать COM на .Net?
smile

Автор: Kurt 1.4.2005, 18:22
Хм.. Как именно ты регистрировал? Вот, наример:
Цитата
RegAsm.exe MyComTest.dll /tlb:MyComTest.tlb

Все нормально, появляются записи в реестре, и другие среды его видят. smile

З.Ы. А вообще, неплохо-бы увидеть код. ;)

Автор: max-anikin 1.4.2005, 19:04
Да - таким спосом удавалось создать tlb файл - который можно было потом указать и получить свой класс. Но при это я не видел методы своего класса. И мне как бы более подходит метод который позволяет обойтись без tlb!! Можно ли так сделать?? smile

З.Ы. Кода по сути нету ... Я просто пока бьюсь над тем чтобы создать COM на .Net. Просто обычный класс: public Свойство и public метод который в консоль строку выводит ... вот и все.

А надо все это для того - чтобы написать класс для перехвата событий Visual SourceSafe-а, реализуя интерфейсы из Microsoft SourceSafe Type Library.

Ссылка в MSDN:
ms-help://MS.MSDNQTR.2005APR.1033/dnvss/html/vssauto.htm#vssauto_topic3

Там есть примеры на Visual Basic но мне хочется под .Net smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)