我在一个.dll文件中使用的代码中遇到了一个汇编错误。这是一个template code from another thread,很多人声称它工作正常。
import clr
import os
file = 'CPUThermometerLib.dll'
print('Does this filepath exist?',os.path.isfile(file))
clr.AddReference(file)
我猜文件路径没有问题,因为它在.isfile函数上返回true。下面是我得到的输出:
Does this filepath exist? True
File "<stdin>", line 1, in <module>
System.IO.FileNotFoundException: Unable to find assembly 'CPUThermometerLib.dll'.
at Python.Runtime.CLRModule.AddReference(String name)
我已经检查了多个线程,没有一个给出解决方案。我使用的是Windows 10,而且,我的.NET框架版本是“4. 0. 30319. 42000”。我的笔记本电脑处理器是Atom Z3537F。
2条答案
按热度按时间fjnneemd1#
clr模块在Windows python安装时默认不安装,你需要在提示符下运行pip install clr来添加它,然后你的代码就可以正确导入它了。
nwo49xxi2#
您需要提供dll文件的完整路径,而不仅仅是文件名。
如果dll文件与Python脚本位于同一目录中,则可以使用
os.path.abspath('CPUThermometerLib.dll')
获取完整路径。完整代码: