Проблема с приведением объекта ActiveX на мой объект - PullRequest
0 голосов
/ 25 ноября 2010

Я пытаюсь использовать Windows From в качестве элемента управления ActiveX внутри SAP B1.Внутри этого элемента управления размещен элемент управления WPF.Это прекрасно работает, за исключением случаев, когда я пытаюсь привести объект ActiveX в свой класс, чтобы я мог использовать все методы в своем классе.Но когда я пытаюсь это сделать, я получаю исключение.Что не так?

Я прошел регистрацию и все такое.Я даже могу отобразить этот элемент управления внутри SAP с некоторыми данными ручной работы (инициализирован в конструкторе элементов управления).Хотя я не уверен, что это более общая проблема, а не специфичная для SAP.

Приветствую любые предложения и заранее спасибо.

Полученное сообщение: Невозможно привести объект COM квведите 'System .__ ComObject' в тип класса 'CapacityCalendarControl.CapacityCalendar'

[Guid("9A2F1CCB-8DC0-4CE5-B3C7-403A1A8CDCE2")]
[ProgId("kamil.calendar.control")]
[ClassInterface(ClassInterfaceType.AutoDual)]
[ComVisible(true)]
public partial class CapacityCalendar : UserControl
{
  //internals...
}

1 Ответ

1 голос
/ 25 ноября 2010

Системный .__ ComObject (оболочка COM) не может быть приведен к классу .NET. Я думаю, что проще всего использовать TLBImport (инструмент импорта библиотеки типов), если ваш activeX оснащен .TLB (внешним или встроенным).

Подробнее см. Здесь: Инструмент для создания оболочек .NET для COM DLL?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...