2017-05-03 8 views
2

Ich versuche, auf Windows zu verwenden twisted.internet.serial und es nicht immer mit der Nachricht zu erstellen:Funktioniert twisted.internet.serialport 17.1.0 unter Windows?

"Datei" C: \ Programme \ Python36 \ lib \ site-packages \ verdreht \ internet_win32seria lport Py "Zeile 65, in _finishPortSetup Flaggen, COMSTAT = win32file.ClearCommError (self._serial.hComPort) Attribute: 'Serien' Objekt hat kein Attribut 'hComPort'"

ich habe versucht, auf 10 Windows x64 als sowie Windows 7 x64 als Administrator, mit Python 3.6.1 und Python 2.7.13.

Ich habe verdrehte 17.1.0 installiert pyserial 3.3, pywin32 221.

Es scheint mir, dass pyserial an einem gewissen Punkt überarbeitet wurde das COM-Port handhaben als self._port_handle anstatt self.hComPort zu privatisieren die Twisted erwartet.

Ist dies ein bekanntes Problem? Gibt es einen Workaround? Sind twisted und/oder PySerial in diesem Fall verbessert?

Danke, Dick

+0

Ich fand [Link] (https://twistedmatrix.com/trac/ticket/8159) Fehlerbericht von vor 16 Monaten. –

Antwort

2

Um meine eigene Frage zu beantworten, habe ich entdeckt, dass dieses Problem seit über einem Jahr bekannt ist. Siehe https://twistedmatrix.com/trac/ticket/8159.

Es gibt einen Workaround: Es ist Patch # 2, die unter dem obigen Link gefunden werden kann.

Es ist noch nicht bekannt, ob die Twisted-Leute irgendwelche Priorität auf die Freigabe dieses Patches in die Mainline gelegt haben.

1

Während Twisted nicht aktualisiert wird, um neuere PySerial-Versionen zu verwenden, habe ich das Problem gelöst, indem ich PySerial in 'pyserial<3.0' (das pyserial==2.7 installiert) heruntergestuft wird.

pip install pyserial<3.0 
Verwandte Themen