Я застрял при попытке обработать событие, вызванное объектом с поздней привязкой.
Я дошел до загрузки сборки (sLibFile содержит местоположение библиотеки):
moAssembly = Reflection.Assembly.LoadFile(sLibFile)
Получение типа объекта, который я создаю, не проблема
moType = moAssembly.GetType("Some.Object")
А создание объекта - пустяк ....
moObject = Activator.CreateInstance(moType)
Но тогда я застрял. Объект, который я создал, предоставляет событие «GetField» со следующей подписью:
Event GetField(FieldName As String, nPageNumber As Integer, ByRef sValue As String)
Я написал подпрограмму, чтобы справиться с этим, но .... как мне добавить эту подпрограмму в качестве обработчика для этого событие? AddHandler работает только с объектами с ранней привязкой.
Я могу получить Событие в порядке .....
oEvent = moType.GetEvent("GetField")
или, возможно,
oEvent = moObject.GetType().GetEvent("GetField")
Но после этого я ' m застрял .... Как мне тогда связать это с Sub, который я написал (я назвал Sub moObject_GetField)?
oEvent.AddEventHandler(moObject, AddressOf moObject_GetField)
Это вызывает ошибку "выражение AddressOf не может быть преобразовано в '[Delegate ] 'потому что тип' [Delegate] 'объявлен как MustInherit и не может быть создан. "
Что теперь?