我正尝试在Windows上使用twisted.internet.serial,但它总是无法创建,并显示以下消息:
“文件"C:\Program Files\Python36\lib\site-packages\twisted\internet_win32seria lport.py",第65行,在串行标志中,comstat = win32file.ClearCommError(self._serial.hComPort) AttributeError:‘_finishPortSetup’对象没有属性'hComPort'”
我在以管理员身份运行的Windows10 x64和Windows7 x64上试用了Python3.6.1和Python2.7.13。
我已经安装了twisted 17.1.0,PySerial 3.3,pywin32 221。
在我看来,PySerial已经在某种程度上进行了修改,将com端口句柄私有化为self._port_handle,而不是twisted期望的self.hComPort。
这是一个已知的问题吗?有什么变通办法吗?扭曲和/或PySerial是否因此问题而得到改善?
谢谢,迪克
发布于 2017-05-04 05:27:48
为了回答我自己的问题,我发现这个问题已经存在一年多了。参见https://twistedmatrix.com/trac/ticket/8159。
有一个解决办法:它是补丁#2,可以在上面的链接中找到。
目前还没有消息表明扭曲的人们是否已经优先将这个补丁发布到主线上。
发布于 2017-10-24 22:01:01
虽然Twisted没有更新为使用较新的PySerial版本,但我已经通过将PySerial降级为'pyserial<3.0' (安装pyserial==2.7)来解决这个问题。
pip install pyserial<3.0https://stackoverflow.com/questions/43764486
复制相似问题