Enable Windows Support
This commit is contained in:
parent
52719c0b7d
commit
206822ac69
|
@ -17,6 +17,7 @@ import usb.core
|
||||||
import usb.util
|
import usb.util
|
||||||
import serial
|
import serial
|
||||||
import socket
|
import socket
|
||||||
|
import sys
|
||||||
|
|
||||||
from .escpos import Escpos
|
from .escpos import Escpos
|
||||||
from .exceptions import USBNotFoundError
|
from .exceptions import USBNotFoundError
|
||||||
|
@ -68,19 +69,22 @@ class Usb(Escpos):
|
||||||
self.idVendor = self.device.idVendor
|
self.idVendor = self.device.idVendor
|
||||||
self.idProduct = self.device.idProduct
|
self.idProduct = self.device.idProduct
|
||||||
|
|
||||||
check_driver = None
|
# detach_kernel_driver() doesn't really work on Windows,
|
||||||
|
# causing the library to not work on that platform.
|
||||||
|
if sys.platform != 'win32':
|
||||||
|
check_driver = None
|
||||||
|
|
||||||
try:
|
|
||||||
check_driver = self.device.is_kernel_driver_active(0)
|
|
||||||
except NotImplementedError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
if check_driver is None or check_driver:
|
|
||||||
try:
|
try:
|
||||||
self.device.detach_kernel_driver(0)
|
check_driver = self.device.is_kernel_driver_active(0)
|
||||||
except usb.core.USBError as e:
|
except NotImplementedError:
|
||||||
if check_driver is not None:
|
pass
|
||||||
print("Could not detatch kernel driver: {0}".format(str(e)))
|
|
||||||
|
if check_driver is None or check_driver:
|
||||||
|
try:
|
||||||
|
self.device.detach_kernel_driver(0)
|
||||||
|
except usb.core.USBError as e:
|
||||||
|
if check_driver is not None:
|
||||||
|
print("Could not detatch kernel driver: {0}".format(str(e)))
|
||||||
|
|
||||||
try:
|
try:
|
||||||
self.device.set_configuration()
|
self.device.set_configuration()
|
||||||
|
|
Loading…
Reference in New Issue