Создание OCX с VS.NET?

Что случилось с OCX? Разве их уже невозможно создать с помощью новейших инструментов?

Мне нужно создать элемент управления ActiveX, который я могу разместить в документах Word, PowerPoint и Excel. Если я использую VS.NET, я могу создать только DLL UserControl с COM Interop, но я не думаю, что смогу добавить это с помощью панели инструментов «Больше элементов управления» на вкладке «Разработчик» в PowerPoint.

Что бы вы сделали?

12.12.2008 18:57:29
4 ОТВЕТА
РЕШЕНИЕ

Да, вы все еще можете их создать. Но вы не можете создать OCX с языком .NET. Нужно быть неуправляемым C ++ (или VB). Библиотеки DLL с COM-взаимодействием, которые вы можете создать в C # или VB.NET, являются просто объектами .NET, которые вызываются через CCW.

3
12.12.2008 19:07:54
Они выходят (OCXs)?
Jason 12.12.2008 19:23:27
Я бы сказал, что это очень вероятно. С переходом на .NET COM становится действительно устаревшей технологией в любой форме. В наши дни мало причин использовать OCX. Сборка .NET, вызванная CCW, почти всегда является лучшим решением.
TheSmurf 12.12.2008 19:32:48
Что такое CCW? Я предполагаю, что вы имеете в виду что-то кроме скрытого ношения.
recursive 2.04.2009 16:02:11

Используйте компилятор C ++ или VB, который может предназначаться для собственного кода + ActiveX.

0
12.12.2008 18:59:38
Ага. их было так легко создать в VB6.
kenny 12.12.2008 19:16:05

Вы все еще можете использовать .NET для создания компонентов ActiveX. Однако это экспериментально и не рекомендуется. Если вы все еще хотите попробовать это, вы можете найти информацию в блоге Эндрю Уайтчепела:

Использование управляемых элементов управления в качестве элементов управления ActiveX

Но, как говорит Андрей:

Кажется, что это работает нормально для Excel (с очень ограниченным тестированием, которое я сделал), частично работает с PowerPoint, но терпит неудачу с Word.

Поэтому, если вы не хотите тратить много времени на отладку странных ошибок, я бы порекомендовал вам использовать старые VB 6.0 и Visual Studio 6.0 для создания компонентов ActiveX.

3
12.12.2008 20:02:37

В зависимости от того, что вам нужно сделать, надстройка может быть более подходящей, чем OCX, и вы, безусловно, можете создать ее с помощью .NET. Вам также следует взглянуть на инструменты Visual Studio для Office, не как на прямую замену OCX, а только для понимания новых возможностей. Это может показать вам новые подходы к проблемам, которые вы сейчас решаете с помощью OCX.

0
2.04.2009 15:41:35