Указанная запись не может быть сопоставлена с классом управляемого значения
Привет, у вас есть проект vb6 "PROJVB6" с классом "CLASSVB6" с этим содержанием:
...
Public Type ActualParametersType_DOCUMENTI
Codice As Variant
Numreg As Variant
End Type
...
Private Gvar_ActualParameters As ActualParametersType_DOCUMENTI
...
Public Property Let ActualParameters(RHS As ActualParametersType_DOCUMENTI)
On Error Resume Next
Gvar_ActualParameters = RHS
End Property
Public Property Get ActualParameters() As ActualParametersType_DOCUMENTI
On Error Resume Next
ActualParameters = Gvar_ActualParameters
End Property
У меня есть другой проект C#, который не ссылается на проект vb6, но нуждается в его использовании. Я пробовал с:
var iet = Type.GetTypeFromProgID("PROJVB6.CLASSVB6");
dynamic CalledProgram = Activator.CreateInstance(iet);
И это работает. Но если я попытаюсь получить свойство ActualParameters с этим:
dynamic a = CalledProgram.ActualParameters();
я получаю эту ошибку:
Указанная запись не может быть сопоставлена с классом управляемого значения.
Как я могу сделать, чтобы получить доступ к ActualParameter для установленных значений Codice или Numreg без генерации ошибки?
Спасибо
1 ответ
Проблема вActualParameters
является свойством, а не методом.
Так что это будет правильно:
// dynamic a = CalledProgram.ActualParameters();
// ^^ wrong
dynamic a = CalledProgram.ActualParameters;