У меня есть DLL, которая была первоначально написана на C ++,
позже модуль в c # обернул его и использовал этот импорт:
[DllImport("myDLL.dll", CallingConvention=CallingConvention.Cdecl)]
public static extern int init();
Сейчас я использую Iron Python и хочу использовать функции в исходной DLL, которые были импортированы в эту программу на c #.
В основном я не знаю, что импортировать в Python. Когда у меня был простой проект в C #, который был преобразован в DLL, я добавил его:
clr.AddReferenceToFileAndPath("my path")
затем я импортировал пространство имен и все функции.
В этом случае я не понимаю, что я должен импортировать?
любая помощь будет оценена
редактировать:
вот что я делаю:
>>> import sys
>>> import clr
>>> clr.AddReferenceToFileAndPath(r"wrapperPath.dll")
>>> import wrapper
>>> from wrapper import *
>>> init()
Traceback (most recent call last):
File "<string>", line 1, in <module>
NameError: name 'initialize' is not defined
C # не имеет функций без классов. Ваша проблема, вероятно, решена с помощью ParentClassName.init (). Возможно, было бы лучше иметь метод экземпляра, который выполняет вызов подписи C ++ P / Invoke для отладки или ведения журнала. Удачи.
Других решений пока нет …