예제 #1
0
 def close(self):
     """Close port"""
     if self._isOpen:
         if self.hComPort:
             # Restore original timeout values:
             win32.SetCommTimeouts(self.hComPort, self._orgTimeouts)
             # Close COM-Port:
             win32.CloseHandle(self.hComPort)
             win32.CloseHandle(self._overlappedRead.hEvent)
             win32.CloseHandle(self._overlappedWrite.hEvent)
             self.hComPort = None
         self._isOpen = False
예제 #2
0
 def _close(self):
     if self._port_handle is not None:
         win32.SetCommTimeouts(self._port_handle, self._orgTimeouts)
         if self._overlapped_read is not None:
             self.cancel_read()
             win32.CloseHandle(self._overlapped_read.hEvent)
             self._overlapped_read = None
         if self._overlapped_write is not None:
             self.cancel_write()
             win32.CloseHandle(self._overlapped_write.hEvent)
             self._overlapped_write = None
         win32.CloseHandle(self._port_handle)
         self._port_handle = None
예제 #3
0
 def _close(self):
     """internal close port helper"""
     if self._port_handle:
         # Restore original timeout values:
         win32.SetCommTimeouts(self._port_handle, self._orgTimeouts)
         # Close COM-Port:
         win32.CloseHandle(self._port_handle)
         if self._overlapped_read is not None:
             win32.CloseHandle(self._overlapped_read.hEvent)
             self._overlapped_read = None
         if self._overlapped_write is not None:
             win32.CloseHandle(self._overlapped_write.hEvent)
             self._overlapped_write = None
         self._port_handle = None
예제 #4
0
 def _close_xp(self):
     """ works on xp an older """
     if self._port_handle is not None:
         # Restore original timeout values:
         win32.SetCommTimeouts(self._port, self._orgTimeouts)
         # Close COM-Port:
         if self._overlapped_read is not None:
             win32.CloseHandle(self._overlapped_read.hEvent)
             self._overlapped_read = None
         if self._overlapped_write is not None:
             win32.CloseHandle(self._overlapped_write.hEvent)
             self._overlapped_write = None
         win32.CloseHandle(self._port_handle)
         self._port_handle = None
예제 #5
0
 def close(self):
     win32.CloseHandle(self._port_handle)