Перспективы объектов .NET и COM (ActiveX) - PullRequest
0 голосов
/ 29 июня 2009

Мы используем библиотеку программного обеспечения от крупного американского производителя. В течение многих лет у библиотеки было в основном два интерфейса, набор DLL-файлов C API и набор элементов управления ActiveX, которые инкапсулируют функциональность DLL. Интерфейс ActiveX работал довольно хорошо в прежние времена Visual Basic 6. Затем появился .NET с интерфейсом совместимости COM Interop для устаревшей технологии ActiveX. Это было несколько ловушек, таких как динамические объекты, которые никогда не удалялись ( Link ), или проблемы при использовании многопоточных приложений (вызовы между квартирами и т. Д.).

Теперь производитель решил прекратить использование интерфейса ActiveX из-за «растущего перехода от COM (то есть элемента управления ActiveX) к технологии .NET в Windows®. сообщество разработчиков ". Кто-нибудь может рассказать мне больше об этом? Планирует ли Microsoft отказаться от интерфейса COM Interop в будущих выпусках .NET, или есть другие серьезные текущие и будущие проблемы, о которых я не задумывался? Или это больше вопрос? на вкус как покупка нового телевизора, потому что он выглядит лучше?

Также мне интересно, есть ли какая-нибудь замена ActiveX RAD , где со стороны пользователя я перетаскиваю элемент управления в свою форму, устанавливаю все параметры графически и почти все готово.

Ответы [ 4 ]

2 голосов
/ 29 июня 2009

Win32 по-прежнему в значительной степени основывается на решениях, принятых в дни DOS, для обеспечения обратной конкурентоспособности. После стольких вложений в COM, Microsoft, вероятно, сохранит этот дух, поддерживая взаимодействие COM, до тех пор, пока .NET не умрет. Сказав это, они просто сохранят то, что имеют, без дальнейшего развития.

Производитель ActiveX, OTOH, не имеет такого рода обязательств (или, по крайней мере, они не чувствуют, что они делают). Поэтому, независимо от поддержки Microsoft, они могут просто отказаться от интерфейса ActiveX, если захотят. И они абсолютно правы, говоря, что люди больше никогда не используют COM.

1 голос
/ 29 июня 2009

.NET превысил функциональность VB6 / ActiveX более шести лет назад. Сегодня нет сравнения.

Удивительно, что ваш поставщик так долго отказывался от поддержки ActiveX.

Кстати, RAD-файлы перетаскивания превысили ActiveX, когда впервые появилась .NET 1.0!

1 голос
/ 29 июня 2009

Приятно видеть вас из этой пещеры! В настоящее время на SO есть 26886 вопросов с тегами C #, 16657 с тегами .Net, 12956 с тегами ASP.Net и только 700 с тегами COM и 243 с тегами ActiveX. Увядание было на стене много-много лет. За последние 7-8 лет технологии компонентов RAD на основе CLR уже прошли через несколько воплощений.

0 голосов
/ 29 июня 2009

На самом деле, речь идет о покупке нового телевизора, потому что он имеет гораздо более здоровый ЖК-экран вместо старого, наносящего ущерб здоровью ЭЛТ-экрана. Отныне производитель больше не поддерживает старые модели из-за отсутствия интереса клиентов.

...