Python中使用virtual bench
在Python中是用virtual bench主要借助了一个pyvirtualbench的python包,这个包的地址:pyvirtualbench.
其实这个软件包就是给virtual bench的相关API做了一个wrapper,里面最终还是通过DLL调用相关的底层函数,这个包里面调用了一个avbin.dll的链接库,默认给出的是32位版本的链接库,所以我们也就需要用32位的python与之进行匹配,64位python是不能调用32位的链接库的。
遇到的问题:
self.box = PyVirtualBench(address)
File "C:\xxxx\worker\devices\virtualbench\__init__.py", line 372, in __init__
self.nilcicapi = cdll.LoadLibrary("nilcicapi")
File "C:\Users\xxxxxx\AppData\Local\Programs\Python\Python37-32\lib\ctypes\__init__.py", line 434, in LoadLibrary
return self._dlltype(name)
File "C:\Users\xxxxx\AppData\Local\Programs\Python\Python37-32\lib\ctypes\__init__.py", line 356, in __init__
self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found
从堆栈调用上我们可以看到应该是调用cdll.LoadLibrary("nilcicapi")
出错了。这个错误是因为没有安装相应的驱动导致的。可以直接下载相应驱动,这个真的是挺麻烦的,好在是可以用了。
最后更新于 2019-03-01 09:05:04 并被添加「」标签,已有 2948 位童鞋阅读过。
本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。