Я использую IronPython 2.0 в окне консоли SharpDevelop 3.1. Я пытаюсь сослаться на библиотеку Redemption CDO и использовать ее.
Стандартное использование библиотеки - создание экземпляра объекта RDOSession, а затем использование методов этого объекта для навигации по объектной модели RDO.
Я зарегистрировал библиотеку DLL Redemption COM и ссылался на нее из проекта, который создал сборку взаимодействия для него. В окне консоли IronPython я делаю следующее:
импорт clr
clr.AddReferenceToFileAndPath (r'd: \ SharpDevelop Projects \ TestPython \ TestPython \ obj \ Debug \ Interop.Redemption.dll ')
Погашение импорта
Пока это работает. Следующим шагом будет получение объекта RDOSession и создание его экземпляра. Если бы это сработало, я бы так подумал:
session = Redemption.RDOSession ()
Однако, это дает ошибку:
Ошибка типа: не удается создать экземпляры RDOSession
Итак, мой вопрос (или был): как создать экземпляр объекта, подобного RDOSession?
Однако я просто ответил на свой вопрос в попытке объяснить его. Я продолжу с ответом, поскольку, несмотря на то, что это кажется глупым, возможно, он будет полезен кому-то еще.
Когда я набрал строку «session = Redemption.RDOSession ()», всплывающая подсказка показала «RDOSession», а также «RDOSessionClass» прямо под ним. Я не знаю, как последний был сгенерирован, но это звучало как объект, который можно создать (если это слово).
>>> session = Redemption.RDOSessionClass ()
>>>
Вот и вот. Вызов метода Logon работал как чемпион для нового объекта сеанса.
Спасибо stackoverflow!