我在这里有点过头,从来没有和dll一起工作过,所以希望我的问题有道理。
我试图使用一个包含许多不同类的C#dll。我在这里阅读了其他问题,例如:
import ctypes
lib = ctypes.cdll.LoadLibary('pathToDLL')
lib.foo()
我明白这一点。如果有意义的话,我还没有弄清楚如何使用dll中的类中的方法。因此,如果dll包含一个名为" Foo"用方法" bar"如何使用ctypes调用bar?也是ctypes尝试访问此dll的最佳方式,还是我应该使用其他东西?
答案 0 :(得分:2)
你应该使用pythonnet模块。 以下是它在Windows上的工作方式。
# dll name = mydll.dll
# namespace = mynamespace
# class = Foo
# method = bar
import clr
# provide name without .dll and make sure either to
# copy the dll in pythonpath e.g. (c:\\python27) or add the path in
# sys.path
clr.AddReference("mydll")
import mynamespace
obj = mynamespace.Foo()
obj.bar()
e.g。
var dropDown = document.getElementById('myDropDown');
for(var i = 0; i < dropDown.options.length; i++) {
if(dropDown.options[i].text == 'value you want to set in drop down') {
dropDown.selectedIndex = i;
break;
}